Κεφάλαιο 1 | Ενότητα 2 | Ερωτήσεις επισκόπησης | Προηγούμενο |Επόμενο| Λεξικό όρων

H Τοπικότητα της αναφοράς και η απόδοση της ΚΜΕ

      H Τοπικότητα της αναφοράς

   Παράλληλα με την εφαρμογή του νόμου του Amdahl σε όλα τα συστήματα, προέκυψαν και άλλες θεμελιώδεις παρατηρήσεις για τις ιδιότητες των προγραμμάτων. Η πιο σημαντική από αυτές είναι η ήδη γνωστή Τοπικότητα της αναφοράς, κατά την οποία τα προγράμματα επιδιώκουν να ξαναχρησιμοποιήσουν δεδομένα και εντολές που πρόσφατα έχουν χρησιμοποιήσει. Είναι εμπειρικά αποδεδειγμένο ότι ένα πρόγραμμα αφιερώνει το 90% από τον εκτελέσιμο χρόνο του σε λιγότερο από το 10% του κώδικα. Απόρροια της τοπικότητας αποτελεί η πρόβλεψη της συχνότητας με την οποία θα επανεκτελεστούν τόσο εντολές όσο και δεδομένα (ανάκληση), λαμβάνοντας υπόψη τις προσπελάσεις του προγράμματος στο πρόσφατο παρελθόν. Ωστόσο η τοπικότητα της αναφοράς εφαρμόζεται για προσπελάσεις δεδομένων παρά για προσπελάσεις κώδικα. Όπως προαναφέρθηκε, δύο είναι οι διαφορετικοί τύποι τοπικότητας, η τοπικότητα χώρου και η τοπικότητα χρόνου.

      H απόδοση της ΚΜΕ

   Εξαιτίας της αρχής της τοπικότητας αλλά και της αυξημένης ταχύτητας των μικροτέρων μνημών, η ιεραρχία μνήμης βελτιώνει σημαντικά την απόδοση. Υπάρχουν διάφοροι τρόποι για να επιβεβαιώσουμε την παραπάνω άποψη. Για την σύγκριση συστημάτων με ή χωρίς κρυφή μνήμη, καλύτερος είναι μέσω του νόμου του Amdahl.
Στην πράξη όμως για την αξιολόγηση της ιεραρχίας μνήμης χρησιμοποιούμε την επέκταση της εξίσωσης του χρόνου εκτέλεσης της ΚΜΕ. Αυτή περιλαμβάνει επιπρόσθετα τον αριθμό των κύκλων κατά τη διάρκεια των οποίων η ΚΜΕ καθυστερεί περιμένοντας μια πρόσβαση στη μνήμη και λέγονται κύκλοι καθυστέρησης της μνήμης (memory stall cycles). Η απόδοση τότε δίνεται:

    (Τύπος 1.27)

   Στην εξίσωση αυτή υποθέτουμε ότι οι κύκλοι ρολογιού της ΚΜΕ περιλαμβάνουν το χρόνο για τη διαχείριση μιας επιτυχίας κρυφής μνήμης και το χρόνο που η ΚΜΕ καθυστερεί κατά τη διάρκεια μιας αποτυχίας κρυφής μνήμης . Ο αριθμός των κύκλων καθυστέρησης μνήμης εξαρτάται τόσο από τον αριθμό των επιτυχιών όσο και από το κόστος ανά αποτυχία το οποίο καλείται και ποινή αποτυχίας (miss penalty) και δίνεται από τον τύπο (1.28):

    (Τύπος 1.28)

Το πλεονέκτημα του τύπου (1.28), είναι ότι τα μέρη του υπολογίζονται εύκολα. Παραδείγματος χάριν ο ρυθμός αποτυχίας είναι το πλήθος των προσβάσεων που αποτυγχάνουν πρoς τις συνολικές προσβάσεις.

ΔΡΑΣΤΗΡΙΟΤΗΤΑ 5

Υποθέστε ότι η κρυφή μνήμη είναι 10 φορές πιο γρήγορη από την κύρια και ότι μπορεί να χρησιμοποιηθεί στο 90% του χρόνου . Να υπολογίσετε πόση επιτάχυνση πετυχαίνουμε με τη χρήση κρυφής μνήμης.

 

ΑΠΑΝΤΗΣΗ ΔΡΑΣΤΗΡΙΟΤΗΤΑΣ 5

Παραδείγματα στην υποενότητα 2.5Παράδειγμα