Πίσω

Παράδειγμα

  Ας υποθέσουμε ότι ένα σύστημα μνήμης χρειάζεται 40 clock cycles για πλεονάζοντα χώρο (αχρησιμοποίητος χώρος ενός φορέα δεδομένων μετά την μορφοποίησή του) και μεταφέρει 16 bytes κάθε 2 κύκλους ρολογιού. Επομένως το σύστημα μπορεί να παρέχει 16 bytes σε 42 κύκλους ρολογιού, 32 bytes σε 44 κύκλους ρολογιού κ.τ.λ. Ποιο μέγεθος από τα μπλοκ της κρυφής μνήμης παρέχει το μικρότερο μέσο χρόνο πρόσβασης για κάθε κρυφή μνήμη του παρακάτω πίνακα:



Απάντηση

Γνωρίζουμε ότι ο μέσος χρόνος προσπέλασης δίνεται από τον τύπo:

Mέσος χρόνος προσπέλασης μνήμη = Χρόνος επιτυχίας + Ρυθμός αποτυχίας x Ποινή αποτυχίας

  Αν υποθέσουμε ότι ο χρόνος επιτυχίας της κρυφής μνήμης είναι ένας κύκλος ρολογιού ανεξάρτητα από το μέγεθος του μπλοκ, τότε ο χρόνος πρόσβασης για ένα μπλοκ μεγέθους 16-bytes σε μια κρυφή μνήμη μεγέθους 1 KB, θα είναι:

Mέσος χρόνος προσπέλασης μνήμη = 1 + (15.05% * 42) = 7.321 κύκλοι ρολογιού
Χρόνος επιτυχίας = 1 κύκλος ρολογιού
Ρυθμός αποτυχίας = 15.05%
Ποινή αποτυχίας = 42 κύκλοι ρολογιού

  Ενώ για ένα μπλοκ μεγέθους 256-bytes σε μια κρυφή μνήμη μεγέθους 256 KB ο Mέσος χρόνος προσπέλασης μνήμη είναι :

Mέσος χρόνος προσπέλασης μνήμη = 1 + (0.49% * 72) = 1.353 κύκλοι ρολογιού
Χρόνος επιτυχίας = 1 κύκλος ρολογιού
Ρυθμός αποτυχίας = 0.49%
Ποινή αποτυχίας = 72 κύκλοι ρολογιού

  Ο παρακάτω πίνακας δείχνει το μέσο χρόνο προσπέλασης μνήμη για όλα τα μεγέθη block της κρυφής μνήμης. Οι καταχωρήσεις με τα τονισμένα μαύρα γράμματα δείχνουν τον μικρότερο χρόνο πρόσβασης και έτσι βρίσκουμε το αντίστοιχο μέγεθος του μπλοκ για κάθε μέγεθος της κρυφής μνήμης. Είναι 32 bytes για 1 KB, 4 KB κρυφές μνήμες και 64 bytes για τις μεγαλύτερες κρυφές μνήμες. Αυτά τα μεγέθη είναι και τα ποιο διαδεδομένα μεγέθη μπλοκ για επεξεργαστές κρυφής μνήμης.