Τι είναι η προσωρινή μνήμη της CPU;

click fraud protection

Οι σύγχρονοι επεξεργαστές λειτουργούν απίστευτα γρήγορα. μπορούν να ξεπεράσουν σημαντικά τη μνήμη RAM του συστήματος. Αυτή η ανισορροπία ταχύτητας μεταξύ της CPU και της μνήμης θα έκανε τον επεξεργαστή σας να παραμένει συχνά σε αδράνεια, περιμένοντας να σταλούν δεδομένα σε αυτόν, ώστε να μπορεί να συνεχίσει να εκτελεί μια διαδικασία. Για να μην συμβεί αυτό, επιτρέποντας στις CPU να συνεχίσουν να λειτουργούν όλο και πιο γρήγορα, χρησιμοποιείται μια κρυφή μνήμη CPU.

Πώς μια κρυφή μνήμη CPU επιταχύνει μια CPU;

Η κρυφή μνήμη της CPU έχει σχεδιαστεί για να είναι όσο το δυνατόν πιο γρήγορη και στη συνέχεια να αποθηκεύει προσωρινά δεδομένα που ζητά η CPU. Η κρυφή μνήμη της CPU έχει βελτιστοποιηθεί η ταχύτητά της με τρεις τρόπους: καθυστέρηση, εύρος ζώνης και εγγύτητα. Η κρυφή μνήμη της CPU λειτουργεί σε πολύ χαμηλές καθυστερήσεις, ελαχιστοποιώντας το χρόνο που χρειάζεται για να επιστραφεί ένα αποτέλεσμα. Για παράδειγμα, το Intel i9-9900k έχει λανθάνουσα μνήμη cache 0,8, 2,4 και 11,1 νανοδευτερόλεπτα για τη μνήμη cache L1, L2 και L3 αντίστοιχα. Συγκριτικά, η καθυστέρηση της σύγχρονης μνήμης RAM υψηλής ταχύτητας είναι της τάξης των 14 νανοδευτερόλεπτων.

Συμβουλή: Τα επίπεδα της κρυφής μνήμης θα εξηγηθούν με περισσότερες λεπτομέρειες αργότερα, αλλά με απλά λόγια τα χαμηλότερα επίπεδα της κρυφής μνήμης είναι πιο γρήγορα αλλά είναι πιο ακριβά, επομένως έχουν χαμηλότερες χωρητικότητες. Ένα νανοδευτερόλεπτο είναι ένα δισεκατομμυριοστό του δευτερολέπτου, επομένως μια καθυστέρηση 0,8 δευτερολέπτων σημαίνει ότι χρειάζεται λιγότερο από ένα δισεκατομμυριοστό του δευτερολέπτου για να εμφανιστεί ένα αποτέλεσμα.

Όσον αφορά το εύρος ζώνης, η κρυφή μνήμη της CPU προσφέρει σημαντικές βελτιώσεις στην απόδοση σε σχέση με την παραδοσιακή αποθήκευση και τη μνήμη RAM. Οι ταχύτητες ανάγνωσης της κρυφής μνήμης L1 και L3 μπορούν να κορυφωθούν στα 2,3 TB/s και 370 GB/s αντίστοιχα, ενώ το εύρος ζώνης της μνήμης RAM είναι συνήθως περίπου 40 GB/s. Αυτό το αυξημένο εύρος ζώνης σημαίνει ότι η κρυφή μνήμη της CPU μπορεί να μεταφέρει δεδομένα στην CPU πολύ πιο γρήγορα από ότι η RAM.

Για να επιτευχθούν οι μέγιστες δυνατές ταχύτητες, η κρυφή μνήμη της CPU είναι στην πραγματικότητα ενσωματωμένη στο πυρίτιο του ίδιου του καλουπιού της CPU. Αυτό ελαχιστοποιεί την απόσταση που χρειάζεται να διανύσουν τυχόν ηλεκτρικά σήματα, διατηρώντας επομένως την καθυστέρηση όσο το δυνατόν χαμηλότερη. Για παράδειγμα, όταν η κρυφή μνήμη L3 μετακινήθηκε για πρώτη φορά από τη μητρική πλακέτα στο καλούπι της CPU, ο επεξεργαστής της εποχής (Pentium 4 EE) κατάφερε να κερδίσει μια βελτίωση απόδοσης 10-20%.

Αρχιτεκτονική της κρυφής μνήμης CPU

Οι σύγχρονες CPU χρησιμοποιούν γενικά τρία επίπεδα κρυφής μνήμης CPU με την ένδειξη L1-3, με τις χαμηλές κρυφές μνήμες να είναι πιο κοντά στους πυρήνες της CPU, ταχύτερες και πιο ακριβές. Κάθε μεμονωμένος πυρήνας CPU σε μια CPU πολλαπλών πυρήνων έχει τη δική του προσωρινή μνήμη L1. Συνήθως χωρίζεται σε δύο μέρη, το L1I και το L1D. Το L1I χρησιμοποιείται για την προσωρινή αποθήκευση εντολών για την CPU ενώ το L1D χρησιμοποιείται για την προσωρινή αποθήκευση των δεδομένων στα οποία πρόκειται να εκτελεστούν αυτές οι εντολές.

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

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

Συμβουλή: Για παράδειγμα, σε μεγέθη κρυφής μνήμης, το i9-9900K της Intel έχει μνήμη cache 64 KB L1 και 256 KB L2 ανά πυρήνα (συνολικά 512 KB L1 και 2 MB L2), έχει επίσης κοινόχρηστη μνήμη L3 16 MB.

Πώς χρησιμοποιείται η κρυφή μνήμη της CPU;

Όλα τα επίπεδα της κρυφής μνήμης της CPU χρησιμοποιούνται για την επιτάχυνση της απόδοσης του επεξεργαστή με την αποθήκευση δεδομένων από τη μνήμη RAM. Όταν μια CPU ζητά δεδομένα, συνήθως πραγματοποιεί αναζήτηση μέσω των επιπέδων κρυφής μνήμης πρώτα σε μια προσπάθεια να λάβει τα δεδομένα όσο το δυνατόν γρηγορότερα. Εάν τα δεδομένα βρεθούν σε μια επίσκεψη κρυφής μνήμης, τότε η CPU μπορεί να συνεχίσει την επεξεργασία της. Εάν τα δεδομένα δεν βρίσκονται στη μνήμη cache, σε αυτό που ονομάζεται απώλεια προσωρινής μνήμης, τότε η CPU πρέπει να ελέγξει τη μνήμη RAM και, στη συνέχεια, τον σκληρό δίσκο, εάν τα δεδομένα δεν υπάρχουν επίσης. Τα πιο γρήγορα επίπεδα ελέγχονται πάντα πρώτα για μέγιστη απόδοση.

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