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

Σχετικά έγγραφα
Αρχιτεκτονική Υπολογιστών

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

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

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

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

ΕΙΣΑΓΩΓΗ στους Η/Υ. Δρ. Β Σγαρδώνη. Τμήμα Τεχνολογίας Αεροσκαφών ΤΕΙ ΣΤΕΡΕΑΣ ΕΛΛΑΔΑΣ. Χειμερινό Εξάμηνο

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

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

Παράλληλα Συστήματα. Γιώργος Δημητρίου. Ενότητα 3 η : Παράλληλη Επεξεργασία. Πανεπιστήμιο Θεσσαλίας - Τμήμα Πληροφορικής

ΔΙΑΛΕΞΗ 01: ΕΙΣΑΓΩΓΗ

Πολυπύρηνοι επεξεργαστές Multicore processors

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

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

Παράλληλοι υπολογιστές

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

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

Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας

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

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

Κατανεμημένα Συστήματα

Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας

Συστήµατα Παράλληλης Επεξεργασίας

Αρχιτεκτονική Υπολογιστών. ηµήτρης Γκιζόπουλος Καθηγητής

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

Διονύσιος Σαλονικίδης. Μεταπτυχιακός Φοιτητής. Διπλωματική Εργασία. Επιβλέπων: Κωνσταντίνος Μαργαρίτης, Καθηγητής. Τμήμα Εφαρμοσμένης Πληροφορικής

ΠΕΡΙΓΡΑΜΜΑ ΜΑΘΗΜΑΤΟΣ

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

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

Εισαγωγή. Λογισµικό & Προγραµµατισµός Συστηµάτων Υψηλής Επίδοσης

Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας

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

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

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

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

Παράλληλη Επεξεργασία Κεφάλαιο 1 Γιατί Παράλληλος Προγραμματισμός;

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


1. Παράλληλοι υπολογιστές

Προγραμματισμός GPUs μέσω του περιβάλλοντος CUDA

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

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ << ΜΕΛΕΤΗ ΤΗΣ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ CUDA ΚΑΙ ΠΑΡΑΛΛΗΛΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΚΑΡΤΩΝ GPU ΤΗΣ NVIDIA >> Αρ. Μητρώου: 04/2519

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

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΥΠΟΛΟΓΙΣΤΕΣ

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

Εισαγωγή. Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιστών Εργαστήριο Υπολογιστικών Συστημάτων

Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας

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

Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιστών. Εισαγωγή. Συστήματα Παράλληλης Επεξεργασίας 9 ο Εξάμηνο

***Computer Organization & Design the Hardware/Software Interface, David Patterson & John Hennessy, Morgan Kaufmann Publishers, 4thed

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

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

ΑρχιτεκτονικήΥπολογιστών. Ι (ένα) Δημήτρης Γκιζόπουλος. Καθηγητής

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

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

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

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

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

Κατανεμημένος και Παράλληλος Προγραμματισμός. Ύλη μαθήματος. Βιβλιογραφία Μαθήματος 2/27/2016

Κεφάλαιο 1 Αφαιρετικότητα και Τεχνολογία Υπολογιστών (Computer Abstractions and Technology)

Σειρά Ασκήσεων 13: Συνοχή (Coherence) Κρυφών Μνημών, Προχωρημένοι Επεξεργαστές (Out-of-Order, Superscalar, Multithreading, Multicores)

ΑΠΟΤΕΛΕΣΜΑΤΑ ΔΙΑΒΟΥΛΕΥΣΗΣ. Προκήρυξη Διαγωνισμού για την «Προμήθεια Εξοπλισμού Κόμβου Μηχανικής Μάθησης» /

MPSoCs για εφαρμογές Video

Υ- 01 Αρχιτεκτονική Υπολογιστών Πολυεπεξεργαστές, 2ο μέρος

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

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

ΠΛΕ-006 ΠΑΡΑΛΛΗΛΗ ΕΠΕΞΕΡΓΑΣΙΑ Διδάσκων: Β. Δημακόπουλος.

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

Πολυνηματικές Αρχιτεκτονικές

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

EM 361: Παράλληλοι Υπολογισμοί

Αρχιτεκτονική Υπολογιστών Ι (ένα)

Μελέτη και αξιολόγηση των σύγχρονων Μονάδων Επεξεργασίας Γραφικών για χρήση σε εφαρµογές γενικού σκοπού ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ

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

Υ07. Διδάσκων: ΠΑΡΑΛΛΗΛΑ ΣΥΣΤΗΜΑΤΑ. Β. Δημακόπουλος.

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

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

Εισαγωγή. Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιστών Εργαστήριο Υπολογιστικών Συστημάτων

Εισαγωγή Θέματα H/W. Χάρης Μανιφάβας Τμήμα Εφ. Πληροφορικής & Πολυμέσων ΤΕΙ Κρήτης. Κατανεμημένα Συστήματα (Ε) Εισαγωγή: Θέματα H/W 1

Θέματα Διαλέξεων. Αρχιτεκτονικές Υπολογιστικών Συστημάτων Δίκτυα Υπολογιστών Λειτουργικά Συστήματα Ενσωματωμένα Συστήματα και Εφαρμογές

Εισαγωγή. Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιστών Εργαστήριο Υπολογιστικών Συστημάτων

4/10/2008. Εισαγωγή στη σχεδίαση συστημάτων VLSI. Περιεχόμενα μαθήματος. Γιώργος Δημητρακόπουλος. Βιβλιογραφία. Ψηφιακά συστήματα.

Περιεχόμενο μαθήματος

MYE-023. Διδάσκων: ΠΑΡΑΛΛΗΛΑ ΣΥΣΤΗΜΑΤΑ & ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Β. Δημακόπουλος.

Εισαγωγή. Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιστών Εργαστήριο Υπολογιστικών Συστημάτων

MYE-023. Διδάσκων: ΠΑΡΑΛΛΗΛΑ ΣΥΣΤΗΜΑΤΑ & ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Β. Δημακόπουλος.

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

Π Τ Υ Χ Ι Α Κ Η Ε Ρ ΓΑ Σ Ι Α

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

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

Πολυνηματικές Αρχιτεκτονικές

MYE-023. Διδάσκων: ΠΑΡΑΛΛΗΛΑ ΣΥΣΤΗΜΑΤΑ & ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Β. Δημακόπουλος.

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

Εθνικό Μετσόβιο Πολυτεχνείο. Aλγόριθμοι δρομολόγησης εφαρμογών σε επίπεδο υλικού για πολυνηματικές αρχιτεκτονικές.

ΚΕΦΑΛΑΙΟ 2: Χειρισμός Δεδομένων

5/3/2012. Εισαγωγή στα Παράλληλα Συστήµατα (Οργάνωση-Προγραµµατισµός) Β. Δημακόπουλος Α. Ευθυμίου

ΕΙΣΑΓΩΓΗ. Παρέχει µια διεπαφή (interface) ανάµεσα στο υλισµικό και στα προγράµµατα εφαρµογών/χρηστών.

ΠΛΕ-079. Διδάσκων: ΠΑΡΑΛΛΗΛΑ ΣΥΣΤΗΜΑΤΑ & ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Β. Δημακόπουλος. dimako@cs.uoi.gr

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

Περίληψη. Υπερυπολογιστές. Υπολογιστικά προβλήµατα. TOP 500 (Ιούνιος 2007) TOP 500 (Ιούνιος 2009) Ε-85: Ειδικά Θέµατα Λογισµικού

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

Transcript:

Αρχιτεκτονική Υπολογιστών Παραλληλισμός Βασικές Πηγές: Αρχιτεκτονική Υπολογιστών: μια Δομημένη Προσέγγιση, Α. Tanenbaum, Vrije Universiteit, Amsterdam. Computer Architecture and Engineering, K. Asanovic, CS1/2-52, University of Berkeley. Αρχιτεκτονική Υπολογιστών, Ν. Κοζύρης, Εθνικό Μετσόβιο Πολυτεχνείο. Compaq: Simultaneous Multi-Threading (Alpha EV8) Silicon Graphics: Multiprocessor Architecture Σύνθεση: Κ.Γ. Μαργαρίτης, Πανεπιστήμιο Μακεδονίας, Τμήμα Εφαρμοσμένης Πληροφορικής.

Αρχιτεκτονική Υπολογιστών Παραλληλισμός Επίπεδα Παραλληλισμού Παραλληλισμός επιπέδου Επεξεργαστή Παραλληλισμός επιπέδου Υπολογιστή Σύγκλιση Τεχνολογιών

Σύγχρονες Πολυεπίπεδες Μηχανές Εφαρμογές Πρόγραμμα γλώσσας υψηλού επιπέδου Πρόγραμμα γλώσσας assembly Συστήματα Αρχιτεκτονική Σενάριο ή κλήση συστήματος (μικτή γλώσσα) Πρόγραμμα σε γλώσσα μηχανής Μικροπρόγραμμα ή γλώσσα περιγραφής υλικού Οργάνωση Υπολογιστής έξι επιπέδων. Η μέθοδος υποστήριξης και η γλώσσα υλοποίησης σημειώνεται κάτω (δίπλα) από κάθε επίπεδο.

TOP 500, 13/06/08 4 cslab@ntua 2007-2008

Επίπεδα Παραλληλισμού Επίπεδο Εντολής (Instruction Level Parallelism, ILP): ταυτόχρονη εκτέλεση εντολών ενός προγράμματος. Επίπεδο Δεδομένων (Data Level Parallelism, DLP): ταυτόχρονη εκτέλεση πράξεων σε ομοειδή δεδομένα, σε ένα επεξεργαστή ή και σε συνεπεξεργαστές ειδικού σκοπού. Επίπεδο Εργασίας (Task/Thread Level Parallelism, Multithreading): ταυτόχρονη εκτέλεση πολλαπλών νημάτων (εργασιών). Επίπεδο Λειτουργίας (Functional Parallelism): ταυτόχρονη εκτέλεση λειτουργιών (GPU, DMA, I/O..) Επίπεδο Υπολογιστή/Υπολογισμού (Multiprocessors, Multicomputers): ταυτόχρονη εκτέλεση ενός ή διαφορετικών προγραμμάτων σε πολλαπλούς επεξεργαστές. Επίπεδο Δικτύου (Clusters, Distributed Systems, Grids): χωρο-χρονική κατανομή διακριτών υπολογισμών και εργασιών με χρόνους επικοινωνίας σημαντικά μεγαλύτελους από τους χρόνους υπολογισμού.

Παράλληλες Αρχιτεκτονικές (a) On-chip (b) coprocessor : Επίπεδο Επεξεργαστή. (c) multiprocessor (d) multicomputer : Επίπεδο Υπολογιστή. (e) Κατανεμημένο Σύστημα, Grid.

Αρχιτεκτονική Υπολογιστών Παραλληλισμός Επίπεδα Παραλληλισμού Παραλληλισμός επιπέδου Επεξεργαστή Παραλληλισμός επιπέδου Υπολογιστή Σύγκλιση Τεχνολογιών

Παραλληλισμός Επιπέδου Εντολής (ILP) Pipelining (Διοχέτευση, Σωλήνωση) (α) Μια διοχέτευση πέντε σταδίων (β) Η κατάσταση κάθε σταδίου σε εννέα κύκλους ρολογιού.

Παραλληλία Επιπέδου Εντολής (ILP) Υπερβαθμωτή (Superscalar) Αρχιτεκτονική (1) Διπλή διοχέτευση πέντε σταδίων με κοινή μονάδα προσκόμισης εντολής (Πρώτοι Pentium, η δεύτερη διοχέτευση μόνο για ακεραίους).

Παραλληλία Επιπέδου Εντολής (ILP) Υπερβαθμωτή (Superscalar) Αρχιτεκτονική (2) Υπερβαθμωτός επεξεργαστής με πέντε λειτουργικές μονάδες, τοποθετημένος σε διοχέτευση πέντε σταδίων (Pentim II).

(Πολλαπλή) Διοχέτευση + Εκτός Σειράς ή/και Υπερβαθμωτή Εκτέλεση + Πολλαπλά Νήματα = Πολυ-Νηματική Επεξεργασία (Multi Τhreading) Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall, Inc. All rights reserved. 0-13-6006639

On-Chip Multithreading (1) Multithreading με απλή διοχέτευση και εκτός σειράς εκτέλεση. (a) (c) Τρία νήματα. Τα άδεια πλαίσια σημβολίζουν stalls. (d) Fine-grained multithreading (1 cycle). (e) Coarse-grained multithreading (max 3 cycles).

On-Chip Multithreading (2) Multithreading με διπλή διοχέτευση και υπερβαθμωτή εκτέλεση. (a) Fine-grained multithreading (1 cycle, 2 stages). (b) Coarse-grained multithreading (max 2 cycles, 2 stages). (c) Simultaneous multithreading (any cycle, any stage).

Hyperthreading στο Pentium 4 Κατανομή πόρων μεταξύ νημάτων στη μικροαρχιτεκτονική Pentium 4 NetBurst.

Compaq Simultaneous Multi Threading (1) Κάθε στάδιο της διοχέτευσης λειτουργεί σαν 4 σχετικά ανεξάρτητοι επεξεργαστές. Επέκταση της Υπερβαθμωτής Επεξεργασίας σε όλα τα στάδια διοχέτευσης.

Compaq Simultaneous Multi Threading (2)

Παραλληλισμός Επιπέδου Δεδομένων (a) Massively Parallel Processors (MPPs): μια CPU πολλές ALUs σε διάταξη πίνακα 1 ή 2 διαστάσεων (Vectror - Array Processors). (b) Coprocessors, GPUs. Επίσης ειδικές εντολές σε Pentium, AMD, GPUs..

Αρχιτεκτονική Υπολογιστών Παραλληλισμός Επίπεδα Παραλληλισμού Παραλληλισμός επιπέδου Επεξεργαστή Παραλληλισμός επιπέδου Υπολογιστή Σύγκλιση Τεχνολογιών

Παραλληλία Επιπέδου Υπολογιστή (α) Σύστημα μοιραζόμενης μνήμης (Multiprocessors, SMPs). (β) Σύστημα κατανεμημένης μνήμης (Multicomputers, Clusters).

SGI-1

SGI-2

Distributed - Shared Memory Υλοποίηση μοιραζόμενης μνήμης σε διάφορα επίπδεα. (a) Υλικό (b) Λειτουργικό Σύστημα (c) Σύστημα Εκτέλεσης.

Clusters Networked Systems Τυπικό cluster, δικτυακός multicomputer. Μεταβίβαση μηνυμάτων (Message passing)

Ταξινόμηση Flynn (1) Flynn s taxonomy of parallel computers.

Ταξινόμηση Flynn (2)

Google (1) Επεξεργασία ερωτήματος στο Google.

Google (2) Τυπικό Google cluster.

Grid Computing Τα επίπεδα του Grid.

Αρχιτεκτονική Υπολογιστών Παραλληλισμός Επίπεδα Παραλληλισμού Παραλληλισμός επιπέδου Επεξεργαστή Παραλληλισμός επιπέδου Υπολογιστή Σύγκλιση Τεχνολογιών

'Κοινοί Τόποι' στην Αρχιτεκτονική Υπολογιστών 1. Η ενέργεια (ηλεκτρισμός) είναι φθηνή, το υλικό (ημιαγωγοί) είναι ακριβό. Τώρα: Power wall : Η ενέργεια είναι ακριβή! Το υλικό φθηνό: Μπορούμε να χωρέσουμε περισσότερα transistors από όσα μπορούμε να τροφοδοτήσουμε/ψύξουμε αποδοτικά. 2. Επαρκής αύξηση της απόδοσης: Παραλληλισμός σε Επίπεδο Εντολής (ILP) με τη βοήθεια μεταγλωττιστών και αρχιτεκτονικών βελτιώσεων (pipelining, superscalar, out-of-order, speculation, VLIW, ) Τώρα: ILP wall : μείωση του ρυθμού βελτίωσης της απόδοσης με τη πρόσθεση υλικού για περισσότερο ILP. 3. Οι πολλαπλασιασμοί είναι αργοί, η προσπέλαση μνήμης γρήγορη. Τώρα: Memory wall : Οι μνήμες είναι πια πολύ πιο αργές από τους επεξεργαστές (200 κύκλοι μηχανής για τη πρόσβαση στη DRAM, 4 κύκλοι για το πολλαπλασιασμό). 4. Η απόδοση των επεξεργαστών διπλασιάζεται κάθε 1.5 χρόνο. Τώρα: 'Ισως 5 χρόνια Power Wall + ILP Wall + Memory Wall = Brick Wall 05/12/08 30 CS252-s06, Lec 01-intro

Κατανάλωση ισχύος επεξεργαστών σε watts/cm2 31 cslab@ntua 2007-2008

Power Wall: προβολή του Nόμου του Moore 32 cslab@ntua 2007-2008

Απόδοση Επεξεργαστών

Συχνότητα ρολογιού Επεξεργαστή προς Ταχύτητα Διαύλου Μνήμης 34 cslab@ntua 2007-2008

Μemory Wall: Χάσμα Επεξεργαστή Μνήμης 1000 CPU processor 60%/yr Moore s Law Speed processor-memory performance gap: (grows 50% / yr) 100 (MHz) 10 DRAM memory 7%/yr 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 1 Time 35 cslab@ntua 2007-2008

Τέλος Εποχής του Ενός Επεξεργαστή: Πολλαπλοί 'Πυρήνες' (cores) Μια από τις μεγαλύτερες αλλαγές στην ιστορία των συστημάτων υπολογιστών Διπλασιασμός των επεξεργαστών (πυρήνων) ανά 2 χρόνια περίπου. Επέκταση του Simultaneous Multithreading σε συνδυασμό με ιεραρχία από τοπικές (κρυφές) μνήμες. Ουσιαστικά ανεξάρτητοι επεξεργαστές μοιραζόμενης μνήμης. Φαίνεται να επιλύει τα προβλήματα των : Power Wall, ILP Wall, Memory Wall. 05/12/08 CS252-s06, Lec 01-intro 36

Η επανάσταση που συμβαίνει σήμερα O «γνήσιος» νόμος του Moore συνεχίζει να ισχύει! Η πυκνότητα των κυκλωμάτων εξακολουθεί να αυξάνει ~2x κάθε 2 χρόνια Αλλά όχι η συχνότητα ρολογιού Θα διπλασιάζεται ο αριθμός των πυρήνων κάθε 2 χρόνια (?) Λίγος ή καθόλου ILP προς εκμετάλλευση. Ο παραλληλισμός πρέπει να μεταφερθεί στο σύστημα και το λογισμικό. Source: Intel, Microsoft (Sutter) and Stanford (Olukotun, Hammond) 37 cslab@ntua 2007-2008

Μια 'θάλασσα' επεξεργαστών; Intel 4004 (1971): 4-bit processor, 2312 transistors, 0.4 MHz, 10 micron PMOS, 11 mm2 chip RISC II (1983): 32-bit, 5 stage pipeline, 40,760 transistors, 3 MHz, 3 micron NMOS, 60 mm2 chip 125 mm2 chip, 0.065 micron CMOS = 2312 RISC II+FPU+Icache+Dcache RISC II shrinks to ~ 0.02 mm2 at 65 nm Caches via DRAM or 1 transistor SRAM? επεξεργαστής = νέο transistor; 05/12/08 38 CS252-s06, Lec 01-intro

Transistor+Computer = Transputer (1980-90) Οι πολυεπεξεργαστές πάντα υπήρχαν 1970s, 80s, 90s, today s processors are nearing an impasse as technologies approach the speed of light.. David Mitchell, The Transputer: The Time Is Now (1989)...αλλά μόνο ως συστήματα ειδικού σκοπού Custom multiprocessors tried to beat uniprocessors Procrastination rewarded: 2X seq. perf. / 1.5 years Τώρα όμως όλες οι μεγάλες εταιρίες συμφωνούν.. We are dedicating all of our future product development to multicore designs. This is a sea change in computing Paul Otellini, President, Intel (2004)..και στρέφονται στους πολυεπεξεργαστές (AMD, Intel, IBM, Sun; all new Apples 2+ CPUs, NVIDIA, PlayStation..) Procrastination penalized: 2X sequential perf. / 5 yrs Biggest programming challenge: from 1 to 2 CPUs 05/12/08 39 CS252-s06, Lec 01-intro

Παραλληλισμός: Σύκλιση Τεχνολογιών Έως το 1985: Παραλληλία σε επίπεδο bit: 4-bit -> 8 bit -> 16-bit 1985-1995: Παραλληλία σε επίπεδο εντολής (Instruction Level Parallelism, ILP) 1995: Παραλληλία σε επίπεδο διεργασίας (νήματος, thread) (Simultaneous Multithreading) 2004: Παραλληλία σε επίπεδο πυρήνων (cores) Έως το 1985: κυρίως Υπερυπολογιστές, Πειραματικά Συστήματα 1985 1990: VLSI, Transputers, Δίκτυα, Κατανεμημένα Συστήματα 1990 2000: Clusters, SMPs, Threads, Δίκτυα Υψηλής Απόδοσης, Grids 2004: Παραλληλία σε πολλαπλά επίπεδα (πυρήνες, threads, επεξεργαστές, clusters, Grids) 40 cslab@ntua 2007-2008

Προβλήματα και προκλήσεις Αλλαγή προγραμματιστικού μοντέλου Αλγόριθμοι, Γλώσσες, Μεταγλωττιστές, Λειτουργικά Συστήματα, Αρχιτεκτονικές, Βιβλιοθήκες.. δεν είναι έτοιμα για Παραλληλισμό σε Επίπεδο Δεδομένων ή Διεργασίας(Νήματος). Σε αντίθεση με το Παραλληλισμό σε Επίπεδο Ετολής (ILP) το πρόβλημα μάλλον δεν μπορεί να λυθεί από τους 'αρχιτέκτονες' και τους 'μηχανικούς συστημάτων' χωρίς συνεργασία των προγραμματιστών εφαρμογών. Πιθανώς να χρειαστεί ανασχεδιασμός των επιπέδων αφαίρεσης (εικονικών μηχανών) στα σύγχρονα υπολογιστικά συστήματα. 05/12/08 41 CS252-s06, Lec 01-intro

Intel Itanium 05/12/08 42 CS252-s06, Lec 01-intro

ALUs (4) 256KB local memory EIB regfile 128x128 FPUs (4) DMA, I/O Controllers 256KB local memory 256KB local memory regfile 128x128 ALUs (4) 256KB local memory regfile 128x128 FPUs (4) 256KB local memory regfile 128x128 ALUs (4) regfile 128x128 FPUs (4) 256KB local memory 256KB local memory regfile 128x128 ALUs (4) regfile 128x128 FPUs (4) 256KB local memory regfile 128x128 IΒΜ Cell (1) 512K L2 I$ D$ 64-bit SMT Power core, 2x in-order superscalar 05/12/08 FPUs (4) ALUs (4) FPUs (4) ALUs (4) FPUs (4) ALUs (4) FPUs (4) ALUs (4) 43 CS252-s06, Lec 01-intro

IΒΜ Cell (2) 05/12/08 44 CS252-s06, Lec 01-intro

Intel Dunnington, 12/09/08 6 Pentium cores, ~90GFlops 05/12/08 45 CS252-s06, Lec 01-intro

Σύστημα πολλαπλών πυρήνων ειδικού σκοπού. Κάθε πυρήνας ασχολείται με άλλη εργασία.

NVIDIA GPU G800GL 05/12/08 47 CS252-s06, Lec 01-intro

NVIDIA Tesla, τέλος 2008 200+ επεξεργαστές, 4 Tflops 05/12/08 48 CS252-s06, Lec 01-intro

Σύγχρονες Πολυεπίπεδες Μηχανές (νέο) Εφαρμογές Συστήματα Παραλληλισμός Αρχιτεκτονική Οργάνωση Υπολογιστής επτά επιπέδων (;). Η μέθοδος υποστήριξης του παραλληλισμού βρίσκεται μεταξύ υλικού και λογισμικού, μάλλον προς το λογισμικό..