Ελληνική μεταφραστική ομάδα GNOME
team@gnome.gr 2009-2015
Δημήτρης Σπίγγος
dmtrs32@gmail.com 2013
Γιάννης Κατσαμπίρης
giannis1_86@hotmail.com 2010
Σίμος Ξενιτέλλης
simos@gnome.org 2009
Κωνσταντίνος Κουράτορας
kouratoras@gmail.com 2010
Σωτηρία Τζιούρη
sotitz@gmail.com 2010
Τζένη Πετούμενου
epetoumenou@gmail.com 2009
Τουρνάρης Παύλος-Πέτρος
p.tournaris@gmail.com 2010

# Οι αναζητήσεις δίσκου θεωρούνται επιβλαβής

Οι αναζητήσεις του δίσκου είναι από τις ποιο δαπανηρές διαδικασίες που μπορείτε ενδεχομένως να εκτελέσετε. Μπορεί να μην το καταλάβετε αυτό απλά εξετάζοντας πόσες από αυτές εκτελείτε, αλλά πιστέψτε μας, είναι πολλές. Συνεπώς, παρακαλώ να αποφεύγεται την ακόλουθη μη-βέλτιστη συμπεριφορά:

Τοποθετώντας πολλά μικρά αρχεία παντού στον δίσκο.

Άνοιγμα, δηλώσεις, και ανάγνωση πολλών μικρών αρχείών παντού στον δίσκο.

Κάνοντας τα ανωτέρω σε αρχεία που δημιουργήθηκαν σε διαφορετικούς χρόνους, ώστε να εξασφαλιστεί ότι είναι τεμαχισμένα και να προκαλούν ακόμη περισσότερη αναζήτηση.

Κάνοντας τα ανωτέρω σε αρχεία που είναι σε διαφορετικούς καταλόγους, ώστε να εξασφαλιστεί ότι βρίσκονται σε διαφορετικές ομάδες κυλίνδρων και έτσι να προκαλεί ακόμη περισσότερη αναζήτηση.

Επαναλαμβανόμενη εκτέλεση των ανωτέρω όταν θα έπρεπε να γίνει μια μόνο φορά.

Τρόποι με τους οποίους μπορείτε να βελτιστοποιήσετε τον κώδικά σας για είναι φιλικός με τις αναζητήσεις:

Παγιώστε τα δεδομένα σε ένα ενιαίο αρχείο.

Κρατήστε τα δεδομένα μαζί στον ίδιο κατάλογο.

Τοποθέτηση των δεδομένων στην προσωρινή μνήμη ώστε να μην χρειάζεται συνεχώς να ξαναδιαβάζονται.

Διαμοιρασμός δεδομένων ώστε να μη χρειάζεται να τα ξαναδιαβάζει από το δίσκο κάθε εφαρμογή όταν φορτώνει.

Consider caching all of the data in a single binary file that is properly aligned and can be mmapped.

Το πρόβλημα με την αναζητήσεις δίσκων είναι αρκετά σύνθετο όσο αναφορά την ανάγνωση, το όποιο είναι δυστυχώς αυτό που κάνουμε. Να θυμάστε, η ανάγνωση είναι γενικά σύγχρονή ενώ η εγγραφή είναι ασύγχρονη. Αυτό κάνει ποιο σύνθετο το πρόβλημα, διατάσσοντας σειριακά κάθε ανάγνωση, και συμβάλλοντας στη λανθάνουσα κατάσταση του προγράμματος.