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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Μάθημα 3: Αρχιτεκτονική Υπολογιστών

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

Είναι το «μυαλό» του υπολογιστή μας. Αυτός κάνει όλους τους υπολογισμούς και τις πράξεις. Έχει δική του ενσωματωμένη μνήμη, τη λεγόμενη κρυφή

ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Α Γενικού Λυκείου (Μάθημα Επιλογής)

ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Α ΤΑΞΗ

Το ολοκληρωμένο κύκλωμα μιας ΚΜΕ. «Φέτα» ημιαγωγών (wafer) από τη διαδικασία παραγωγής ΚΜΕ

Chapter 4 (1) Αξιολόγηση και κατανόηση της απόδοσης

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

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

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

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

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

Chapter 4 ( ή 1 στο βιβλίο σας)

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

1. Οργάνωση της CPU 2. Εκτέλεση εντολών 3. Παραλληλία στο επίπεδο των εντολών 4. Γραμμές διοχέτευσης 5. Παραλληλία στο επίπεδο των επεξεργαστών

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

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control)

Πανεπιστήμιο Θεσσαλίας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων

ΤΕΧΝΙΚΕΣ ΑΥΞΗΣΗΣ ΤΗΣ ΑΠΟΔΟΣΗΣ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ I

*Ένας υπολογιστής είναι στην πραγματικότητα ένα σύστημα πολλών μερών που συνεργάζονται μεταξύ τους.

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

; Γιατί είναι ταχύτερη η λήψη και αποκωδικοποίηση των εντολών σταθερού μήκους;

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

Το υλικό του υπολογιστή

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

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

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

Chapter 5. Ο επεξεργαστής: διαδρομή δεδομένων και μονάδα ελέγχου. Ενδέκατη (11 η ) δίωρη διάλεξη.

Κάθε functional unit χρησιμοποιείται μια φορά σε κάθε κύκλο: ανάγκη για πολλαπλό hardware = κόστος υλοποίησης!

Κεφάλαιο 4 ο. Ο Προσωπικός Υπολογιστής

Εφαρµογές Πληροφορικής Υπολογιστών. Κεφάλαιο 3 Το υλικό του υπολογιστή

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

Συστήματα σε Ολοκληρωμένα Κυκλώματα

ΜΑΘΗΜΑ 1- MULTIPLE CHOICE

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

Εισαγωγή στην Επιστήμη των Υπολογιστών

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

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

Αρχιτεκτονική x86(-64) 32-bit και 64-bit λειτουργία. Αρχιτεκτονική x86(-64) Αρχιτεκτονική επεξεργαστών x86(-64) Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ)

Μαλούτα Θεανώ Σελίδα 1

Αρχιτεκτονική Επεξεργαστών Ψ.Ε.Σ

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

ΕΠΛ 001: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ

Διάλεξη 12 Καθυστερήσεις (Stalls)

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

Βασίλειος Κοντογιάννης ΠΕ19

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2014

Μηχανοτρονική. Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο,

ΠΡΟΒΛΗΜΑ ΕΠΕΓΕΡΓΑΣΙΑ. (Είναι οι σκέψεις και οι πράξεις που κάνουμε για να λυθεί το πρόβλημα) ΕΙΣΟΔΟΥ - ΕΞΟΔΟΥ

ΠΛΕ- 027 Μικροεπεξεργαστές 6ο μάθημα: Αρχιτεκτονική πυρήνα: υλοποίηση με διοχέτευση

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ, ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 001: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

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

και η µονάδα ελέγχου (control) O επεξεργαστής: Η δίοδος δεδοµένων (datapath) Εντολές διακλάδωσης (branch beq, bne) I Type Σχεδίαση datapath

Γενική οργάνωση υπολογιστή «ΑΒΑΚΑ»

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

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2009 ΑΠΑΝΤΗΣΕΙΣ

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

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

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control)

Κεφάλαιο 4. Διδακτικοί Στόχοι. Για την αναγκαιότητα, τον τρόπο συνεργασίας, τις δυνατότητες και τον τρόπο εγκατάστασης των περιφερειακών συσκευών.

Λειτουργικά Συστήματα (διαχείριση επεξεργαστή, μνήμης και Ε/Ε)

Τι είναι ένα λειτουργικό σύστημα (ΛΣ); Μια άλλη απεικόνιση. Το Λειτουργικό Σύστημα ως μέρος του υπολογιστή

ΠΕΡΙΕΧΟΜΕΝΑ Υλικό και Λογισμικό Αρχιτεκτονική Υπολογιστών Δομή, Οργάνωση και Λειτουργία Υπολογιστών 6

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

ΠΛΗ10 Κεφάλαιο 2. ΠΛΗ10 Εισαγωγή στην Πληροφορική: Τόμος Α Κεφάλαιο: 2 2.1: Bασική Δομή του Υπολογιστή

Πληροφορική Ι. Μάθημα 6 ο Εκτέλεση πράξεων, Αρχιτεκτονική Η/Υ. Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας

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

Κεφάλαιο 1.5: Τα βασικά μέρη ενός υπολογιστή

Εντολές γλώσσας μηχανής

Υλικό Υπολογιστών (Hardware) ΜΥΥ-106 Εισαγωγή στους Η/Υ και Πληροφορική

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

Στοιχεία από την αρχιτεκτονική των μικροϋπολογιστών

Έχοντας κατανοήσει την ύλη του 1ου μαθήματος ( Εισαγωγή στην Αρχιτεκτονική Η/Υ ) θα πρέπει να μπορείτε να απαντήσετε στις παρακάτω ερωτήσεις:


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

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

Transcript:

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Απόδοση ΚΜΕ (Μέτρηση και τεχνικές βελτίωσης απόδοσης) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης

Κεντρική Μονάδα Επεξεργασίας συχνά και το σύστημα γραφικών μέσα στον επεξεργαστή οθόνη διασυνδετικός δίαυλος CPU core... CPU core > 90GB/s κρυφή μνήμη (3 ου επιπέδου) σύστημα γραφικών PCIe (x16) έως 8GB/s north bridge M-bus (mem bus) 25+ GB/s (multi-channel) DRAM Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) Central Processing Unit (CPU) ποντίκι, πληκτρολόγιο, εκτυπωτές, σαρωτές... USB έως 5Gbit/s south bridge έως 500ΜB/s 600ΜB/s οι ρυθμοί μεταφοράς που δίνονται είναι οι θεωρητικά μέγιστοι! Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ 2 SATA σκληροί δίσκοι, CD/DVD, δικτυακή σύνδεση

Απόδοση ΚΜΕ Υπολογιστικό σύστημα Η απόδοση εξαρτάται από όλα τα επιμέρους τμήματά του Υλικό και λογισμικό Κεντρική Μονάδα Επεξεργασίας Πόσο γρήγορα εκτελείται ένα πρόγραμμα; Επίσης σε αρχιτεκτονικές ειδικού σκοπού: αξιοπιστία, κατανάλωση ενέργειας Πώς επηρεάζει η αρχιτεκτονική την απόδοση; Πόσο γρηγορότερα εκτελείται ένα πρόγραμμα μετά από μια αρχιτεκτονική αλλαγή; Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ 3

Εκτέλεση προγραμμάτων i Throughput: Ο ρυθμός ολοκλήρωσης έργου σε συγκεκριμένο χρόνο Χρόνος εκτέλεσης (execution( time) Επίσης: response time Ο συνολικός χρόνος εκτέλεσης ενός προγράμματος Μαζί με επιβάρυνση λειτουργικού συστήματος Αύξηση απόδοσης Μείωση χρόνου εκτέλεσης Για υπολογιστή Χ: Απόδοση(Χ) = 1 Χρόνος Εκτέλεσης(Χ) Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ 4

Συγκρίνοντας δύο υπολογιστές Συγκρίνοντας αποδόσεις Έστω υπολογιστές Χ και Υ Εάν: Απόδοση(Χ) > Απόδοση(Υ) Τότε (και αντίστροφα): Χρόνος Εκτέλεσης(Χ) < Χρόνος Εκτέλεσης(Υ) ; Ο Χ εκτελεί ένα πρόγραμμα σε 10 sec και ο Υ σε 15 sec. Πόσο πιο γρήγορος είναι ο Χ; Απόδοση(Χ) Απόδοση(Υ) = Χρόνος Εκτέλεσης(Υ) Χρόνος Εκτέλεσης(Χ) = n Ο Χ είναι n φορές γρηγορότερος από τον Υ Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ 5

Απόδοση ΚΜΕ Χρόνος εκτέλεσης στην ΚΜΕ Ο χρόνος για τον οποίο η ΚΜΕ εκτελεί εντολές του προγράμματος Όχι χρόνος για Ε/Ε ή άλλες διεργασίες Χρόνος προγράμματος χρήστη Για το πρόγραμμα καθεαυτό Χρόνος συστήματος Λειτουργίες ΛΣ για την εξυπηρέτηση του προγράμματος Δεν πρέπει να ξεχνάμε όμως Χρόνος εκτέλεσης: εξαρτάται ε από όλα τα επιμέρους τμήματα του συστήματος Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ 6

Βασικά μεγέθη μέτρησης απόδοσης ΚΜΕ ; Πώς υπολογίζεται το CPI όταν υπάρχουν διαφορετικοί τύποι εντολών; Κύκλος ρολογιού (περίοδος) Clock Cycle (CC) Η διάρκεια ενός κύκλου ρολογιού κατά τον οποίο η ΚΜΕ εκτελεί τις μικρότερες βασικές λειτουργίες Σταθερό μέγεθος Κύκλοι ρολογιού ανά εντολή Clocks Per Instruction (CPI) Οι απαιτούμενοι κύκλοι ρολογιού για την ολοκλήρωση μιας εντολής Ενδεχομένως διαφορετικό μέγεθος ανά τύπο εντολής Αριθμός εντολών Instruction Count (IC) Ο αριθμός των εντολών Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ 7

Χρόνος εκτέλεσης ΚΜΕ (χρήστη) Χρόνος Εκτέλεσης ΚΜΕ για ένα πρόγραμμα ExecTime = IC x CPI x CC Τι μπορεί να κάνει ο σχεδιαστής ΚΜΕ για να βελτιώσει την απόδοση; Να μειώσει τον κύκλο ρολογιού (CC)( Nα α μειώσει τον αριθμό κύκλων ανά εντολή (CPI) Οι εντολές παραμένουν ως έχουν Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ 8

Παράδειγμα Τύπος εντολής A B C CPI 1 2 3 Ακολουθία κώδικα A B C 1 2 1 2 2 4 1 1 Επιλογή μεταξύ 2 ακολουθιών εντολών Ποια ακολουθία εκτελεί τις περισσότερες εντολές; Ποια είναι ταχύτερη; Ποιο το μέσο CPI σε κάθε περίπτωση; [Patterson-Hennessy Computer Organization and Design, 3rd ed] Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ 9

Συσχέτιση με λογισμικό! Το υλικό (ISA) καθορίζει και τα τρία μεγέθη (IC, CPI και CC) Αλγόριθμος Καθορίζει το IC Ενδεχομένως καθορίζει το CPI, ευνοώντας ορισμένους τύπους εντολών (π.χ. κινητής υποδιαστολής) Γλώσσα προγραμματισμού - Μεταγλωττιστής Καθορίζει το ΙC (μετάφραση εντολών υψηλού επιπέδου) Καθορίζει το CPI απαιτώντας/χρησιμοποιώντας συγκεκριμένους τύπους εντολών Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ 10

Μετροπρογράμματα Benchmarks Για τη μέτρηση της απόδοσης Και τη σύγκριση μεταξύ υπολογιστών Θα πρέπει να αντιπροσωπεύουν τις πραγματικές εφαρμογές Υπό ρεαλιστικές συνθήκες εκτέλεσης και δεδομένα εισόδου Χωρίς εσωτερικές ειδικές βελτιστοποιήσεις Δυνατότητα επανάληψης μέτρησης Διαφορετικά για ανόμοιες κλάσεις υπολογιστών PCs, servers, embedded systems Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ 11

Ο νόμος του Amdahl ; Ένα πρόγραμμα τρέχει για 100 sec σε έναν υπολογιστή και εκτελεί πολλαπλασιασμούς για 80 sec. Πόσο πρέπει να βελτιώσω τη ταχύτητα του πολλαπλασιασμού για να πενταπλασιάσω τη συνολική απόδοση; Η βελτίωση της συνολικής απόδοσης ενός συστήματος μέσω της εισαγωγής ενός νέου χαρακτηριστικού, περιορίζεται από το βαθμό χρήσης αυτού του νέου χαρακτηριστικού Οι περισσότερο χρησιμοποιούμενες περιπτώσεις πρέπει να είναι γρήγορες! Όχι βελτιστοποίηση των σπάνιων περιπτώσεων! Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ 12

ΚΜΕ ενός κύκλου (single-cycle) ΚΜΕ ενός κύκλου επόμενη διεύθυνση +d + MUX + έλεγχος διακλάδωσης PC μνήμη εντολών εντολή op R1 R2 offs Κάθε εντολή ολοκληρώνεται σε έναν κύκλο ρολογιού register file MUX ALU μνήμη δεδομένων MUX Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ 13

ΚΜΕ ενός κύκλου (single-cycle) ΚΜΕ ενός κύκλου CPI = 1 Σε κάθε έναν κύκλο ρολογιού ολοκληρώνεται μια εντολή ή κάθε εντολή απαιτεί έναν κύκλο ρολογιού Πόσο πρέπει να είναι το CC; Ίσο με τη διάρκεια της μεγαλύτερης λειτουργίας! Μη αποδοτικό σχήμα Όλες οι εντολές δεν απαιτούν τον ίδιο χρόνο Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ 14

Παράδειγμα ΚΜΕ ενός κύκλου Εντολή Αριθμητική IF 200 ID 50 EX 100 DM 0 WB 50 Σύνολο 400 ps Διακλάδωση 200 50 100 0 0 350 ps Ανάγνωση μνήμης Εγγραφή μνήμης 200 200 50 50 100 100 200 200 CC πρέπει να είναι 600 ps (single cycle CPU) 600 ps 550 ps Αν ήταν δυνατή η χρήση με μεταβλητό CC (πρακτικά αδύνατο!) Ποια η βελτίωση της απόδοσης; 25% ανάγνωση, 10% εγγραφή, 45% αριθμητικές, 20% διακλάδωσης 50 0 Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ 15

ΚΜΕ πολλαπλών κύκλων (multi-cycle) ΚΜΕ ενός κύκλου KME πολλαπλών κύκλων CPI > 1 Κάθε εντολή χωρίζεται σε έναν μεταβλητό αριθμό βημάτων Κάθε βήμα απαιτεί έναν κύκλο ρολογιού Πόσο πρέπει να είναι το CC; Ίσο με τη διάρκεια του μεγαλύτερου βήματος Μέρη της ΚΜΕ μπορούν να χρησιμοποιηθούν για περισσότερες από μία φορές κατά την εκτέλεση μιας εντολής Καταχωρητές για τη συγκράτηση αποτελεσμάτων μεταξύ βημάτων Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ 16

Παράδειγμα: Εντολή load (βήμα IF) ΚΜΕ ενός κύκλου KME πολλαπλών κύκλων! Η εντολή load απαιτεί τα περισσότερα βήματα για να εκτελεστεί! PC μνήμη Ireg Dreg ανάκληση εντολής register file Areg Breg R1 mem[r2 + offset] +d ALU Oreg υπολογισμός νέου PC Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ 17

Παράδειγμα: Εντολή load (βήμα ID) ΚΜΕ ενός κύκλου KME πολλαπλών κύκλων προσπέλαση R2 PC μνήμη Ireg register file Dreg Areg ALU Breg Oreg R1 mem[r2 + offset] Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ 18

Παράδειγμα: Εντολή load (βήμα EX) ΚΜΕ ενός κύκλου KME πολλαπλών κύκλων πρόσθεση R2+offset PC μνήμη Ireg register file Dreg Areg ALU Breg Oreg R1 mem[r2 + offset] Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ 19

Παράδειγμα: Εντολή load (βήμα DM) ΚΜΕ ενός κύκλου KME πολλαπλών κύκλων PC μνήμη Ireg register file Areg ALU Oreg ανάγνωση mem[r2+offset] Dreg Breg R1 mem[r2 + offset] Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ 20

Παράδειγμα: Εντολή load (βήμα WB) ΚΜΕ ενός κύκλου KME πολλαπλών κύκλων PC μνήμη Ireg register file Areg ALU Oreg Dreg Breg ; αποθήκευση σε R1 Σε κάθε βήμα, μερικά τμήματα μένουν ανενεργά. Πώς θα μπορούσαμε να τα εκμεταλλευτούμε; R1 mem[r2 + offset] Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ 21

Μονάδα Ελέγχου ΚΜΕ πολλαπλών κύκλων ΚΜΕ ενός κύκλου KME πολλαπλών κύκλων Πολυπλοκότητα σημάτων ελέγχου Σε κάθε βήμα εκτέλεσης της εντολής Ανάλογα με το είδος της εντολής Διατήρηση προηγούμενης κατάστασης Μέθοδοι υλοποίησης Αυτόματα πεπερασμένων καταστάσεων Ακολουθιακά λογικά κυκλώματα Παραγωγή σημάτων ελέγχου ανάλογα με εισόδους και τρέχουσα κατάσταση Μικροπρόγραμμα Καθορισμός σημάτων μέσω μικροεντολών Εσωτερικά στην ΚΜΕ (δεν αλλάζουν μετά τη σχεδίαση) Για υλοποίηση σύνθετων εντολών με πολλά βήματα και πολλαπλά περάσματα από το datapath Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ 22

Απόδοση ΚΜΕ πολλαπλών κύκλων ΚΜΕ ενός κύκλου KME πολλαπλών κύκλων Πλεονεκτήματα Δεν απαιτείται ο μέγιστος χρόνος για το CC Μέρη της ΚΜΕ χρησιμοποιούνται με πολλαπλό τρόπο κατά την εκτέλεση μιας εντολής Μειονεκτήματα Η μονάδα ελέγχου γίνεται πολυπλοκότερη Η πολυπλοκότητα πιθανόν να ακυρώνει τα πλεονεκτήματα! Σήμερα Οι ΚΜΕ υψηλής απόδοσης χρησιμοποιούν πρόσθετες τεχνικές παραλληλισμού σε επίπεδο εντολών (instruction level parallelism ILP) (στο επόμενο μάθημα...) Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ 23