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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Chapter 6 Αύξηση της απόδοσης με διοχέτευση (pipeline)

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

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

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

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

Διάλεξη 12 Καθυστερήσεις (Stalls) Εκκενώσεις Εντολών (Flushing)

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

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

ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 13. Διακλαδώσεις. Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ

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

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

Θέματα Μεταγλωττιστών

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

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

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

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

Οργάνωση Η/Υ. Γιώργος Δημητρίου. Μάθημα 8 ο Μερική Επικάλυψη. Πανεπιστήμιο Θεσσαλίας - Τμήμα Πληροφορικής

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

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

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

30 min κάθε «φάση» Pipeline: Ένα παράδειγµα από.τη καθηµερινή ζωή. 1. Πλυντήριο. 2. Στεγνωτήριο. 3. ίπλωµα. 4. αποθήκευση. προσέγγιση για 4.

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

Αρχιτεκτονική Υπολογιστών II Ενδεικτικές απαντήσεις στα θέματα των εξετάσεων

2η ΑΣΚΗΣΗ ΣΤΗΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ Ακ. έτος , 5ο Εξάμηνο Σχολή ΗΜ&ΜΥ

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

Υπερβαθμωτή (superscalar) Οργάνωση Υπολογιστών

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

Παραλληλισµός Εντολών (Pipelining)

Υπερβαθµωτή Οργάνωση Υπολογιστών

Διάλεξη 11 Προώθηση (Forwarding)

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

Περιορισμοί των βαθμωτών αρχιτεκτονικών

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

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

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

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

Θέµατα Φεβρουαρίου

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

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

(Branch Prediction Mechanisms)

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

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

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

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

Κεφάλαιο 6 Βελτίωση Απόδοσης με Διασωλήνωση (Enhancing Performance with Pipelining)

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

ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ II. χειμερινό εξάμηνο & εαρινό εξάμηνο (σε κίτρινο υπόβαθρο)

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

Οργάνωση Υπολογιστών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Εργαστήριο 10: Επίδοση Επεξεργαστών, CPI. Μανόλης Γ.Η. Κατεβαίνης

ΠΛΕ- 027 Μικροεπεξεργαστές 7ο μάθημα: Αρχιτεκτονική πυρήνα: Πρόβλεψη διακλάδωσης, Εξαιρέσεις

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

1.1 ΑΣΚΗΣΗ ΛΥΣΗ 2.1 ΑΣΚΗΣΗ ΛΥΣΗ 3.1 ΑΣΚΗΣΗ

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

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

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

Διαγώνισμα Α Τριμήνου Καλή Επιτυχία

Προγραμματισμός Υπολογιστών

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

ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός Κεφ. 4: O επεξεργαστής Σύστημα Διασωλήνωσης (Pipelining)

Υ- 07 Παράλληλα Συστήματα Αρχιτεκτονική σύγχρονων πυρήνων επεξεργαστών

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

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

Επανάληψη Σύστημα Διασωλήνωσης (Pipelining) Κεφάλαιο 4 - Σύστημα ιασωλήνωσης

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΔΕΥΤΕΡΗ ΠΡΟΟΔΟΣ ΣΤΗΝ ΟΡΓΑΝΩΣΗ ΣΤΟΥΣ Η/Y (ΗΥ232)

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

Δυναμική Δρομολόγηση Εντολών (Dynamic Scheduling)

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

Υπερβαθμωτή (superscalar) Οργάνωση Υπολογιστών

Transcript:

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2015-16 Παραλληλισμός σε επίπεδο εντολών (Pipelining και άλλες τεχνικές αύξησης απόδοσης) http://di.ionio.gr/~mistral/tp/comparch/ Μ.Στεφανιδάκης

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

Επανάληψη: Απόδοση ΚΜΕ Υπολογιστικό σύστημα Η απόδοση εξαρτάται από όλα τα επιμέρους τμήματά του Υλικό και λογισμικό Κεντρική Μονάδα Επεξεργασίας Πόσο γρήγορα εκτελείται ένα πρόγραμμα; ExecTime = IC x CPI x CC Αρχιτεκτονική Υπολογιστών Παραλληλισμός σε επίπεδο εντολών 3

ΚΜΕ ενός (single-cycle) CC add R1,R2,R3 Κάθε εντολή ολοκληρώνεται σε έναν κύκλο ρολογιού CPI = 1 CC = διάρκεια αργότερης εντολής ld R1,R2,mem[addr] DΜ Αρχιτεκτονική Υπολογιστών Παραλληλισμός σε επίπεδο εντολών 4

ΚΜΕ (multi-cycle) CC CC CC CC CC add R1,R2,R3 επόμενη εντολή Κάθε εντολή ολοκληρώνεται σε μεταβλητό αριθμό ρολογιού CPI > 1 CC = διάρκεια αργότερου σταδίου ld R1,(R2,mem-addr) DΜ Αρχιτεκτονική Υπολογιστών Παραλληλισμός σε επίπεδο εντολών 5

Απόδοση ΚΜΕ CPI multiple cycle 1 single cycle CC Αρχιτεκτονική Υπολογιστών Παραλληλισμός σε επίπεδο εντολών 6

Πιθανότητα περαιτέρω βελτίωσης; IF CC CC CC CC ID Σε κάθε κύκλο, ένα μέρος της ΚΜΕ δεν χρησιμοποιείται! EX WB Αρχιτεκτονική Υπολογιστών Παραλληλισμός σε επίπεδο εντολών 7

Παραλληλισμός σε επίπεδο εντολών Instruction Level Parallelism (ILP) Παράλληλη (ταυτόχρονη) εκτέλεση μεταξύ εντολών Επικάλυψη εκτέλεσης εντολών Την ίδια στιγμή Βαθμίδες pipeline (μία ανά CC) Βασικό στοιχείο αύξησης απόδοσης σύγχρονων επεξεργαστών Στόχος Να μειωθεί το CC, αλλά ταυτόχρονα το CPI να παραμείνει 1 Αρχιτεκτονική Υπολογιστών Παραλληλισμός σε επίπεδο εντολών 8

Αρχές τεχνικής pipelining CC CC CC CC CC ld R1,(R0,100) DΜ CC CC DΜ ld R2,(R0,200) ; Ποιος ο χρόνος εκτέλεσης μιας εντολής; Κάθε πότε ολοκληρώνεται μια εντολή; ld R3,(R0,300) DΜ Αρχιτεκτονική Υπολογιστών Παραλληλισμός σε επίπεδο εντολών 9

Απόδοση τεχνικής pipelining Χρόνος ολοκλήρωσης μιας εντολής latency Δεν αλλάζει! (διάσχιση pipeline) Ρυθμός ολοκλήρωσης εντολών Σε κάθε έναν κύκλο ρολογιού Ολοκληρώνεται μια εντολή Μια νέα ξεκινά την εκτέλεσή της Η ιδανική περίπτωση...αλλά Απόδοση συστήματος μνήμης - αποκωδικοποίηση εντολών; Ανάγκη ταυτόχρονης χρήσης ίδιων βαθμίδων pipeline; Αλληλεξαρτήσεις δεδομένων εντολών; Διακλαδώσεις; Αρχιτεκτονική Υπολογιστών Παραλληλισμός σε επίπεδο εντολών 10

Απόδοση ιδανικού pipeline CPI 1 deeply pipelined multiple cycle pipelined single cycle CC Αρχιτεκτονική Υπολογιστών Παραλληλισμός σε επίπεδο εντολών 11

Δυσκολίες στην εφαρμογή του pipelining Αδυναμία χρήσης μιας βαθμίδας Structural hazard Η βαθμίδα χρησιμοποιείται από άλλη εντολή Αποφεύγεται με σωστή σχεδίαση Αλληλεξαρτήσεις δεδομένων Data hazard Τα αναγκαία δεδομένα για την εκτέλεση μιας εντολής δεν είναι διαθέσιμα Υπολογίζονται από προηγούμενη εντολή Αντιμετωπίζεται (εν μέρει) με πρόσθετο υλικό Μηχανισμός forwarding - bypassing Αρχιτεκτονική Υπολογιστών Παραλληλισμός σε επίπεδο εντολών 12

Forwarding - bypassing add R1,R2,R3 sub R3,R4,R8! Pipeline bubbles Δεν αποφεύγονται πάντοτε! add R1,R2,R3 sub R3,R4,R8 Αρχιτεκτονική Υπολογιστών Παραλληλισμός σε επίπεδο εντολών 13

Δυσκολίες στην εφαρμογή του pipelining Διακλαδώσεις Control (branch) hazard Η ροή της εκτέλεσης αλλάζει Οι εντολές που έχουν μπει στο pipeline δεν είναι οι σωστές! Πρόβλεψη διακλαδώσεων Δυναμικές μέθοδοι στο υλικό του επεξεργαστή (διατήρηση ιστορίας προηγούμενων διακλαδώσεων) Συσχέτιση με αποφάσεις για άλλες διακλαδώσεις σήμερα: >90% σωστές προβλέψεις Σε περίπτωση λάθους πρόβλεψης Απόρριψη όλων των εντολών στο pipeline Χωρίς να λαμβάνονται υπ όψη τα αποτελέσματά τους Αρχιτεκτονική Υπολογιστών Παραλληλισμός σε επίπεδο εντολών 14

Pipelining και διακοπές-σφάλματα Interrupts - Exceptions Ποια εντολή στο pipeline προκάλεσε τη διακοπή; Διαδικασία Διακοπή εκτέλεσης εντολής Ολοκλήρωση προηγούμενων εντολών στο pipeline Άδειασμα pipeline (flush) από τυχόν επόμενες εντολές Μετάβαση σε προκαθορισμένη διεύθυνση Καθορίζεται από το Λειτουργικό Σύστημα Αρχιτεκτονική Υπολογιστών Παραλληλισμός σε επίπεδο εντολών 15

Ακόμα μεγαλύτερος βαθμός ILP Προχωρημένες τεχνικές ILP Ο στόχος: CPI < 1 Η αλλιώς: ολοκλήρωση πολλών εντολών ανά κύκλο ρολογιού Πολλαπλές βαθμίδες εκτέλεσης Σε κάθε κύκλο ξεκινά η εκτέλεση νέων εντολών Πολλαπλή εκτέλεση (multiple-issue)( Στατική πολλαπλή εκτέλεση Ο μεταγλωττιστής αποφασίζει κατά κύριο λόγο ποιες εντολές θα εκτελεστούν ταυτόχρονα Δυναμική πολλαπλή εκτέλεση Οι αποφάσεις εκτέλεσης λαμβάνονται από την ΚΜΕ Αρχιτεκτονική Υπολογιστών Παραλληλισμός σε επίπεδο εντολών 16

Απόδοση multiple-issue επεξεργαστών Προχωρημένες τεχνικές ILP CPI 1 deeply pipelined multiple cycle pipelined single cycle deeply pipelined multi-issue pipelined multi-issue CC Αρχιτεκτονική Υπολογιστών Παραλληλισμός σε επίπεδο εντολών 17

Εικαζόμενη εκτέλεση Προχωρημένες τεχνικές ILP Speculative Execution Κλειδί για την αύξηση του βαθμού παραλληλίας σε επίπεδο εντολών Όταν προβλέπεται πολλαπλή εκτέλεση εντολών Πρόβλεψη ροής εκτέλεσης και αποτελεσμάτων Για την επίτρεψη εκτέλεσης επόμενων εντολών που (ίσως) εξαρτώνται από την τρέχουσα εντολή Προσωρινή αποθήκευση έως ότου τα δεδομένα να μην είναι πλέον εικαζόμενα Διόρθωση λάθους πρόβλεψης Αρχιτεκτονική Υπολογιστών Παραλληλισμός σε επίπεδο εντολών 18

Είδη multiple-issue επεξεργαστών Προχωρημένες τεχνικές ILP Επεξεργαστές VLIW Very Long Instruction Word Πακέτα εντολών Παράλληλη εκτέλεση Δεν είναι δυνατοί όλοι οι συνδυασμοί εντολών στο ίδιο πακέτο Ο μεταγλωττιστής συγκροτεί τα πακέτα εντολών Ελέγχει σε (μεγάλο βαθμό) Αλληλεξαρτήσεις αλληλουχίες εντολών Πρόβλεψη διακλαδώσεων Intel Itanium, Trimedia CPUs Αρχιτεκτονική Υπολογιστών Παραλληλισμός σε επίπεδο εντολών 19

Intel Itanium processor Προχωρημένες τεχνικές ILP i Η Intel ονομάζει την αρχιτεκτονική αυτή EPIC (explicitly parallel instruction computer) Αρχιτεκτονική Υπολογιστών Παραλληλισμός σε επίπεδο εντολών 20

Είδη multiple-issue επεξεργαστών Προχωρημένες τεχνικές ILP Επεξεργαστές superscalar Ο επεξεργαστής ελέγχει σε κάθε κύκλο αν μπορεί να ξεκινήσει την εκτέλεση μιας η περισσότερων εντολών Πολλαπλές μονάδες εκτέλεσης Δυναμική απόφαση ανάθεσης εντολών σε μονάδες Εκτέλεση εκτός σειράς (out-of-order( execution) Ο κώδικας εκτελείται πάντα σωστά Ανεξάρτητα από μεταγλώττιση Intel IA-32 (Pentium και μετά), PowerPC Αρχιτεκτονική Υπολογιστών Παραλληλισμός σε επίπεδο εντολών 21

IBM Power4 processor Προχωρημένες τεχνικές ILP Αρχιτεκτονική Υπολογιστών Παραλληλισμός σε επίπεδο εντολών 22