Ιεραρχία Μνήμης. Ιεραρχία μνήμης και τοπικότητα. Σκοπός της Ιεραρχίας Μνήμης. Κρυφές Μνήμες

Σχετικά έγγραφα
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες. (οργάνωση, λειτουργία και απόδοση)

i Στα σύγχρονα συστήματα η κύρια μνήμη δεν συνδέεται απευθείας με τον επεξεργαστή

Τεχνολογίες Κύριας Μνήμης

Κύρια μνήμη. Μοντέλο λειτουργίας μνήμης. Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (ΙI)

Οργάνωση Υπολογιστών (ΙI)

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Εικονική Μνήμη. (και ο ρόλος της στην ιεραρχία μνήμης)

Ιεραρχία Μνήμης. Εικονική μνήμη (virtual memory) Επεκτείνοντας την Ιεραρχία Μνήμης. Εικονική Μνήμη. Μ.Στεφανιδάκης

Παραλληλισμός σε επίπεδο εντολών

Κεντρική Μονάδα Επεξεργασίας. Επανάληψη: Απόδοση ΚΜΕ. ΚΜΕ ενός κύκλου (single-cycle) Παραλληλισμός σε επίπεδο εντολών. Υπολογιστικό σύστημα

i Όλες οι σύγχρονες ΚΜΕ είναι πολυπλοκότερες!

Οργάνωση Υπολογιστών (IΙI)

Κεντρική Μονάδα Επεξεργασίας

Βασικές συσκευές Ε/Ε. Είσοδος Έξοδος στον υπολογιστή. Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (IΙI) Μ.

Κεφάλαιο 7 Ιεραρχία Μνήμης (Memory Hierarchy)

i Throughput: Ο ρυθμός ολοκλήρωσης έργου σε συγκεκριμένο χρόνο

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ. (Μέτρηση και τεχνικές βελτίωσης απόδοσης)

ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2

Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών H/Y Department of Electrical and Computer Engineering. Εργαστήριο 8. Χειμερινό Εξάμηνο

ΠΛΕ- 027 Μικροεπεξεργαστές 9ο μάθημα: Αρχιτεκτονική συστήματος μνήμης: Κρυφές μνήμες εισαγωγή

Εισαγωγή στην Αρχιτεκτονική Η/Υ

Διάλεξη 15 Απόδοση της Ιεραρχίας Μνήμης Βελτιστοποίηση της απόδοσης

Εισαγωγή στην Αρχιτεκτονική Η/Υ

Το μάθημα συνοπτικά (1) Το μάθημα συνοπτικά (2) Τι είναι ένα υπολογιστικό σύστημα ;

Processor-Memory (DRAM) ιαφορά επίδοσης

Το μάθημα συνοπτικά (1) Το μάθημα συνοπτικά (2) Τι είναι ένα υπολογιστικό σύστημα ;

Υ- 01 Αρχιτεκτονική Υπολογιστών Υπόβαθρο: Κρυφές μνήμες

Κεφάλαιο 5. ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ -. Σερπάνος 2. Σημείωση

Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) Τμήματα ΚΜΕ (CPU) Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (Ι)

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ

Αρχιτεκτονική υπολογιστών

Επιπλέον διδακτικό υλικό κρυφών μνημών: set-associative caches, πολιτικές αντικατάστασης, χειρισμός εγγραφών

Αρχιτεκτονική Υπολογιστών

Οργάνωση Υπολογιστών (Ι)

SMPcache. Ένα εργαλείο για προσομοίωση-οπτικοποίηση κρυφής μνήμης (Cache)

Εικονική Μνήμη (Virtual Μemory)

Άσκηση 1η. Θεωρήστε ένα σύστημα μνήμης με μία cache: 4 way set associative μεγέθους 256ΚΒ,

Ασκήσεις Caches

Processor-Memory (DRAM) ιαφορά επίδοσης

Διασύνδεση Εισόδου-Εξόδου

ΟΡΓΑΝΩΣΗ ΚΑΙ ΣΧΕΔΙΑΣΗ Η/Υ

Processor-Memory (DRAM) Διαφορά επίδοσης

Εικονική Μνήμη (Virtual Μemory)

Ασκήσεις Caches. Αρχιτεκτονική Υπολογιστών. 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκ. Κοζύρης

Ασκήσεις Caches

Αρχιτεκτονική Υπολογιστών

Διασυνδετικοί Δίαυλοι. Τι διασυνδέει ένας δίαυλος; Μεταφορά δεδομένων. Διασύνδεση Εισόδου-Εξόδου. Μ.Στεφανιδάκης

Αρχιτεκτονικές Συνόλου Εντολών

3 η ΑΣΚΗΣΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ ΥΠΟΛΟΓΙΣΤΩΝ

; Τι περιέχεται στη συσκευασία ενός μικροεπεξεργαστή σήμερα;

Οργάνωση Ιεραρχίας Μνήμης - Caches

Αρχιτεκτονική Υπολογιστών

Η ιεραρχία της μνήμης

Αρχιτεκτονική Υπολογιστών

Διάλεξη 14 Εισαγωγή στην Ιεραρχία Μνήμης

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ Η/Υ

Ενότητα 2: Η κρυφή µνήµη και η λειτουργία της

Αρχιτεκτονική-ΙI Ενότητα 4 :

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ

ΠΑΡΑΛΛΗΛΗ ΕΠΕΞΕΡΓΑΣΙΑ

Φόρμα Σχεδιασμού Διάλεξης (ημ/α:15/10/07, έκδοση:0.1 ) 1. Κωδικός Μαθήματος : 2. Α/Α Διάλεξης : 1 1. Τίτλος : 1. Εισαγωγή στην Αρχιτεκτονική Η/Υ

Συστήματα μνήμης και υποστήριξη μεταφραστή για MPSoC

Επαρκή χωρητικότητα αποθήκευσης Αποδεκτό επίπεδο μέσης απόδοσης Χαμηλό μέσο κόστος ανά δυαδικό δ ψηφίο

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ

Οργάνωση Υπολογιστών

Οργάνωση και Σχεδίαση Υπολογιστών Η ιασύνδεση Υλικού και Λογισµικού, 4 η έκδοση. Κεφάλαιο 5. Μεγάλη και γρήγορη: Αξιοποίηση της ιεραρχίας της µνήµης

ΗΛΕΚΤΡΟΝΙΚΟΙ ΥΠΟΛΟΓΙΣΤΕΣ

Εικονική Μνήμη (virtual memory)

Cach O p i timisati tions

ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ Ι. Κεφάλαιο 1 Εισαγωγή στην Δομή, Οργάνωση, Λειτουργία και Αξιολόγηση Υπολογιστών

Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας. Πληροφορική Ι. Μάθημα 5 ο Οργάνωση Υπολογιστών. Δρ.

Ασκήσεις Αρχιτεκτονικής Υπολογιστών

ΤΙΤΛΟΣ ΕΡΓΑΣΙΑΣ ΚΑΤΑΓΡΑΦΗ ΗΛΕΚΤΡΟΝΙΚΟΥ ΥΛΙΚΟΥ ΚΑΙ ΔΙΑΥΛΩΝ ΕΠΙΚΟΙΝΩΝΙΑΣ

ΕΠΛ 001: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Επανάληψη

Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών. Αρχιτεκτονική Υπολογιστών Νεκτάριος Κοζύρης.

Είδη των Cache Misses: 3C s

Εισαγωγή στην Δομή, Οργάνωση, Λειτουργία και Αξιολόγηση Υπολογιστών

Α. Δίνονται οι. (i) στη. πρέπει να. πιο. (ii) $a0. $s0 θα πρέπει να. αποθήκευση. αυξάνει τον. f: sub sll add sub jr. h: addi sw sw.

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ

Με τον όρο μνήμη αναφερόμαστε στα μέσα που χρησιμοποιούνται για την αποθήκευση προγραμμάτων και δεδομένων σε έναν υπολογιστή ή άλλη ψηφιακή

Λειτουργικά Συστήματα Κεφάλαιο 2 Οργάνωση Συστήματος Αρχείων 2.1 Διαχείριση Αρχείων και Σύστημα Αρχείων(File System)

3. Η ιεραρχία της μνήμης

ΕΠΛ 605: ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ ΧΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ 2018 ΕΡΓΑΣΙΑ 3 (13/10/2018) Ηµεροµηνία Παράδοσης δεύτερου µέρους: 18/10/2018

ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Επανάληψη

Οργάνωση επεξεργαστή (2 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

MULTIPLE CHOICE REVISION: ΜΑΘΗΜΑ 1-2

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ

Ηλεκτρονικός Υπολογιστής

ΕΘΝΙKΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. Ονοματεπώνυμο: ΑΜ:

Ζητήµατα Απόδοσης. Ιεραρχία Μνήµης. Αναγκαιότητα για Ιεραρχία Μνήµης. Processor-DRAM Gap (latency) Ε-85: Ειδικά Θέµατα Λογισµικού

Αρχιτεκτονική υπολογιστών

Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών. Αρχιτεκτονική Υπολογιστών Νεκτάριος Κοζύρης. Cache Optimizations


ΣΥΣΚΕΥΕΣ ΑΠΟΘΗΚΕΥΣΗΣ (ΜΝΗΜΗ)

Ηλεκτρονικοί Υπολογιστές Δ Εξάμηνο

Το εσωτερικό ενός PC. Τεχνολογία Η/Υ & Πληροφοριών - 05 Κεντρική μονάδα Χουρδάκης Μανόλης

Υ- 01 Αρχιτεκτονική Υπολογιστών Ιεραρχία μνήμης: προχωρημένα θέματα

Τμήμα Λογιστικής. Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. Μάθημα 8. 1 Στέργιος Παλαμάς

Εισαγωγή στην Πληροφορική

Ενσωµατωµένα Υπολογιστικά Συστήµατα (Embedded Computer Systems)

Ενότητα 4. Εισαγωγή στην Πληροφορική. Αναπαράσταση δεδοµένων. Αναπαράσταση πληροφορίας. υαδικοί αριθµοί. Χειµερινό Εξάµηνο

Transcript:

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Κρυφές Μνήμες (οργάνωση, λειτουργία και απόδοση) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Για βελτίωση της απόδοσης του συστήματος μνήμης (και του συνολικού υπολογιστικού συστήματος) οθόνη Ιεραρχία συχνά και το σύστημα γραφικών μέσα στον επεξεργαστή σύστημα γραφικών ποντίκι, πληκτρολόγιο, εκτυπωτές, σαρωτές... διασυνδετικός δίαυλος PCIe (x16) έως 8GB/s USB έως 5Gbit/s core L1 north bridge south bridge έως 500ΜB/s core L1 > 90GB/s (3 ου επιπέδου, L3) M-bus (mem bus) 25+ GB/s (multi-channel) SATA 600ΜB/s DRAM σκληροί δίσκοι, CD/DVD, δικτυακή σύνδεση οι ρυθμοί μεταφοράς που δίνονται είναι οι θεωρητικά μέγιστοι! Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες 2 L2... L2 Σκοπός της Ιεραρχίας Ιεραρχία μνήμης και τοπικότητα Για να επιτύχει τον σκοπό της η ιεραρχία μνήμης εκμεταλλεύεται την αρχή της τοπικότητας Προσέγγιση της ιδανικής μνήμης Ο επεξεργαστής να βλέπει μνήμη Με την ταχύτητα του υψηλότερου επιπέδου Και το μέγεθος του χαμηλότερου επιπέδου 0,5-5ns $4.000-$10.000/GB 50-70ns $100-$200/GB Κρυφή μνήμη (SRAM) ένα πρόγραμμα εκτελεί το 90% των εντολών του μέσα στο 10% του κώδικά του Χρονική Τοπικότητα Εάν προσπελαστεί μια θέση μνήμης, είναι πολύ πιθανό να προσπελαστεί ξανά στο άμεσο μέλλον Παράδειγμα: οι εντολές ενός βρόχου (loop) Εφαρμογή: Δεδομένα εντολές που βρίσκονται ήδη κοντύτερα στον επεξεργαστή (π.χ. στην κρυφή μνήμη) θα προσπελαστούν πολύ γρηγορότερα 5.000.000-20.000.000 ns $0,5-$2/GB Μαγνητικοί δίσκοι Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες 3 Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες 4

Ιεραρχία μνήμης και τοπικότητα Κρυφές μνήμες ένα πρόγραμμα εκτελεί το 90% των εντολών του μέσα στο 10% του κώδικά του Χωρική Τοπικότητα Εάν προσπελαστεί μια θέση μνήμης, είναι πολύ πιθανό να προσπελαστούν και οι γειτονικές θέσεις στο άμεσο μέλλον Εντολές προγραμμάτων Δεδομένα σε πίνακες κλπ Εφαρμογή: Εάν προσπελαστεί μια θέση μνήμης, μεταφέρονται και οι διπλανές της λέξεις στη μνήμη του υψηλότερου επιπέδου Μεταφορά σε (πολλαπλές λέξεις μνήμης) Γρηγορότερη προσπέλαση Σημαντικό τμήμα στην ιεραρχία μνήμης Εξέλιξη συστημάτων 1962: οι πρώτες ιεραρχίες μνήμης (Atlas computer) Όχι όμως 1965: η πρώτη περιγραφή (Wilkes) O πρώτος υπολογιστής με (IBM 360/85) 1968: η πρώτη χρησιμοποίηση του όρου cache memory Στη συνέχεια: Πολλαπλά επίπεδα (L1, L2, L3) Βελτιωμένες αρχιτεκτονικές Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες 5 Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες 6 Απλό μοντέλο ιεραρχίας μνήμης Αποθήκευση δεδομένων στην Ιεραρχία Οι αρχές λειτουργίας της απλής ιεραρχίας μπορούν να επεκταθούν σε πολλαπλά επίπεδα Η διαχείριση της γίνεται από το υλικό διαφανώς προς τις εφαρμογές Τα δεδομένα βρίσκονται αρχικά στην κύρια μνήμη Η περιέχει υποσύνολο των δεδομένων Μεταφορά μεταξύ επιπέδων μνήμης σε λέξεων Αποθήκευση δεδομένων Τα υψηλότερα επίπεδα της ιεραρχίας μνήμης είναι υποσύνολα των χαμηλότερων Όλα τα δεδομένα αποθηκεύονται τελικά στο χαμηλότερο επίπεδο Μεταφορά δεδομένων Αντιγραφή από επίπεδο σε επίπεδο Το ελάχιστο σύνολο δεδομένων που μεταφέρεται μεταξύ δύο επιπέδων ονομάζεται Πολλαπλά bytes (πολλές λέξεις μαζί) Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες 7 Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες 8

Αναζήτηση δεδομένων στην Ιεραρχία Μπλοκ (γραμμές) Αναζήτηση δεδομένων Ο επεξεργαστής ζητά πάντοτε τα δεδομένα από το κοντινότερο σε αυτόν επίπεδο Τα δεδομένα υπάρχουν στο επίπεδο αυτό: hit Τα δεδομένα δεν βρίσκονται στο επίπεδο αυτό: miss Η αίτηση προωθείται στο επόμενο (χαμηλότερο) επίπεδο Όταν βρεθεί, το που περιέχει τα δεδομένα αντιγράφεται στο ανώτερο επίπεδο Οι σύγχρονοι επεξεργαστές διαθέτουν κρυφές μνήμες (L1) με μέγεθος έως 64 bytes Για την εκμετάλλευση της τοπικότητας Όταν πρέπει να μεταφερθεί μια λέξη, μεταφέρεται το που την περιέχει Το μέγεθος του είναι καθοριστικό για την απόδοση της ιεραρχίας μνήμης Το σύστημα κύριας μνήμης έχει βελτιστοποιηθεί αρχιτεκτονικά για μεταφορές λέξεις Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες 9 Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες 10 Τοποθέτηση ενός Άμεση απεικόνιση θέσης Η κύρια μνήμη περιέχει πολύ περισσότερα από όσα χωρούν στην Συνεπώς, στην ίδια θέση της πρέπει να τοποθετηθούν περισσότερα από ένα Σύγκρουση! Πώς αποφασίζεται η θέση ενός στην κρυφή μνήμη; Η απλή λύση: άμεση απεικόνιση (direct mapped caches) Κάθε πηγαίνει σε μία μόνο θέση (αριθμός ) mod (θέσεις( στην ) Υπολογίζεται πολύ εύκολα αν οι θέσεις είναι δύναμη του 2 Παράδειγμα: Block = 16 bytes Cache = 32 blocks Αριθμός = 0x22 0x226 = 001 00010 0110 θέση = 2 0x7Ε9 = 011 11110 10 1001 0x821 = 100 00010 0001 θέση 0 θέση 1 θέση 2 θέση 3... θέση 30 θέση 31 Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες 11 Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες 12

Ποιο βρίσκεται σε κάθε θέση; Ανάγνωση: Cache Hit Είναι η θέση κατειλημμένη από κάποιο ; valid bit (V) 0x226 = 001 00010 0110 0x821 = 100 00010 0001 = 0 1 001 2 3.. 30 31 Σε περίπτωση εύρεσης των δεδομένων στην, η ΚΜΕ μπορεί να τα λάβει ακόμα και σε 1 κύκλο read 0x226 = 001 00010 0110 hit 001 0 1 2 3.. Αιτήσεις για ανάγνωση: εντολές και δεδομένα Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες 13 Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες 14 Ανάγνωση: Cache Miss Εγγραφή στην Miss penalty: ο χρόνος για την μεταφορά του από κύρια μνήμη και επιστροφή δεδομένων στον επεξεργαστή read 0x821 = 100 00010 0001 miss 100 001 read 0x820 0x82F 0 1 2 3.. Αιτήσεις για ανάγνωση: εντολές και δεδομένα Συνοχή δεδομένων: Πώς επηρεάζουν οι κρυφές μνήμες τη σχεδίαση πολυεπεξεργαστικών συστημάτων; Μόνο για δεδομένα Write Hit Ενημέρωση Στη συνέχεια: Είτε ενημερώνω αμέσως την κύρια μνήμη ( write- through) Επιβάρυνση σε κάθε εγγραφή! Δεν χρησιμοποιείται πλέον Είτε μόνο όταν το εκτοπίζεται από την κρυφή μνήμη (write-back) Write Miss Απαιτείται επιπλέον λογική για τον έλεγχο της σωστής αποθήκευσης των δεδομένων Πρέπει το να έρθει (ανάγνωση!) πρώτα στην από την κύρια μνήμη Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες 15 Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες 16

Τι δημιουργεί cache misses; Χαρακτηριστικά απόδοσης Η πρώτη φορά προσπέλασης ενός Μπλοκ που δεν βρέθηκαν ποτέ μέχρι τώρα στην κρυφή μνήμη Λόγω χωρητικότητας της Η δεν χωράει όλα τα (ταυτόχρονα) Μπλοκ που τοποθετούνται στην ίδια θέση στην κρυφή μνήμη, συναγωνίζονται για τη θέση αυτή ανάλογα με τη μέθοδο τοποθέτησης ακόμα κι αν άλλο μέρος της είναι ελεύθερο... Hit Rate Ποσοστό προσπελάσεων μνήμης, όπου τα δεδομένα βρίσκονται στην Miss Rate Ποσοστό προσπελάσεων μνήμης, όπου τα δεδομένα δεν βρίσκονται στην (1-hit rate) Hit Time Ο χρόνος για την προσπέλαση δεδομένων σε hit Miss Penalty Ο χρόνος για την προσπέλαση, μεταφορά και τοποθέτηση των δεδομένων miss από την κύρια στην και στον επεξεργαστή Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες 17 Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες 18 Το κόστος των cache misses Χαμένοι κύκλοι ρολογιού Σε αναμονή για προσπέλαση κύριας μνήμης Κύκλοι Αναμονής = Προσπελάσεις μνήμης * Miss Rate * Miss Penalty Είναι απλουστευμένο μοντέλο γιατί: Διαφορετικό Miss Rate ανά κατηγορίες εντολών Διαφορετικό Miss Rate για ανάγνωση-εγγραφή Σύνθετη ανάλυση για εκτέλεση εκτός σειράς Ο επεξεργαστής κρύβει την καθυστέρηση εκτελώντας κάτι άλλο: πώς υπολογίζεται το miss penalty τότε; Βελτίωση της απόδοσης Μείωση του miss rate Μείωση του miss penalty Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες 19 Τεχνικές μείωσης miss rate Αντιμετώπιση αιτιών που προκαλούν misses Αύξηση χωρητικότητας Αλλά: μια μεγάλη μπορεί να είναι πιο αργή! (αύξηση hit time) Αύξηση του μεγέθους του Προσπάθεια εκμετάλλευσης της τοπικότητας Αλλά: αυξάνει το miss penalty Πιθανόν να αυξάνει τελικά το miss rate, λόγω των λιγότερων στην Ευέλικτες τεχνικές τοποθέτησης των Ώστε να παραμένουν περισσότερο στην Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες 20

Ευέλικτες τεχνικές τοποθέτησης Τεχνικές μείωσης miss penalty Πιθανή η αύξηση του hit time λόγω πολύπλοκου κυκλώματος! 0x226 = 001 00010 0110 fully associative 2-way set associative 00100010 001 Πιθανή τοποθέτηση Παράλληλη αναζήτηση Οι σύγχρονοι επεξεργαστές έχουν τουλάχιστον L1 και L2 cache μέσα στο ίδιο το chip τους Μείωση των χρόνων μεταφοράς Βελτιστοποιήσεις στην επικοινωνία με την κύρια μνήμη Έτσι ώστε ένα ολόκληρο να μεταφέρεται με τη μικρότερη δυνατή καθυστέρηση ( bursts) Πολυεπίπεδες ιεραρχίες Μείωση miss penalty πρώτου επιπέδου (L1) L1: μικρότερο μέγεθος, μεγαλύτερη ταχύτητα Μεγαλύτερο miss rate αλλά miss penalty μικρότερο L2: μεγαλύτερο μέγεθος, μικρότερη ταχύτητα Αργότερη αλλά δεν επηρεάζει hit time επεξεργαστή Αντικατάσταση: least recently used (LRU) Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες 21 Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες 22 Ανάγνωση από κύρια μνήμη Πολυεπίπεδη οργάνωση CLK Τύπος L1 Μέγεθος έως 64ΚΒ Χρόνος προσπέλασης 4ns Ρυθμός μεταφοράς 50GB/s COMMAND ACT PRE READ ACT READ PRE ACT L2 έως 8ΜΒ 10ns 25GB/s ADDR BS DQ Ra Ca Rb Cb Ra CAS Latency=3 Da Da+1 Da+2 Da+3 Db Db+1 Db+2 Db+3 Burst Length=4 Οι σύγχρονοι επεξεργαστές έχουν ξεχωριστή L1 για εντολές και δεδομένα. Ποια τα πλεονεκτήματαμειονεκτήματα; Παράδειγμα: Pentium4 L1 cache: 4 κύκλοι ρολογιού (pipelined: 1) L3 έως 64ΜΒ 20ns L2 cache: 20 κύκλοι ρολογιού 10GB/s Προσπέλαση στη μνήμη: >100 κύκλοι ρολογιού Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες 23 Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες 24

Intel Montecito : Επίπεδα Intel Montecito : Επίπεδα L1 instruction & data caches: 16KB 4-way set associative, έως και 4 αιτήσεις ανά κύκλο ρολογιού Intel Montecito: 1,72 δις τρανζίστορ 2 επεξεργαστές Itanium2 1.8GHz @ 100W Intel Montecito: συνολικά 27MB μέσα στο chip L2 instruction cache: 1ΜΒ 8-way set associative, 128 bytes, 7 κύκλοι για προσπέλαση L2 data cache: 256KB, 5-6κύκλοι για προσπέλαση L3 cache: 12ΜΒ, 14 κύκλοι για προσπέλαση Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες 25 Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες 26 Βελτιστοποίηση απόδοσης Η απόδοση της συνοπτικά Αρχιτεκτονικές βελτιώσεις Pipelining Non-blocking εξυπηρέτηση πολλαπλών αιτήσεων Πολλαπλά επίπεδα στο chip του επεξεργαστή Ο ρόλος του λογισμικού (μεταγλωττιστές) Αναδιοργάνωση προγραμμάτων για αύξηση της τοπικότητας (κυρίως στους βρόχους επανάληψης) Prefetching: μετακίνηση δεδομένων στην πριν αυτά χρειαστούν στον επεξεργαστή! Καθοριστική για τα σύγχρονα υπολογιστικά συστήματα Μείωση του miss rate ή του miss penalty Όμως: η συμπεριφορά της ιεραρχίας μνήμης επηρεάζεται από πολλούς παράγοντες! Η πραγματική συμπεριφορά Είναι σύνθετη απαιτούνται εξομοιώσεις πριν τη σχεδίαση νέων συστημάτων Είναι διαφορετική ανά εφαρμογή δεν υπάρχει ένα μόνο αντιπροσωπευτικό πρόγραμμα! Είναι διαφορετική ανά υπολογιστικό σύστημα desktop, server ή embedded Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες 27 Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες 28