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

Σχετικά έγγραφα
Περιεχόμενο μαθήματος

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

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

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

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

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

An Overview of Parallel Architectures

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

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

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


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

Παρουσίαση 2 ης Άσκησης:

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

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

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

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

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές

Παράλληλος προγραμματισμός: Σχεδίαση και υλοποίηση παράλληλων προγραμμάτων

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

Διεργασίες και Νήματα (2/2)

Παράλληλος προγραμματισμός: Σχεδίαση και υλοποίηση παράλληλων προγραμμάτων

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

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

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

Main source: "Discrete-time systems and computer control" by Α. ΣΚΟΔΡΑΣ ΨΗΦΙΑΚΟΣ ΕΛΕΓΧΟΣ ΔΙΑΛΕΞΗ 4 ΔΙΑΦΑΝΕΙΑ 1

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

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

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

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

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

Παράλληλος προγραμματισμός: Σχεδίαση και υλοποίηση παράλληλων προγραμμάτων

Παρουσίαση 1 ης Άσκησης:

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

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

Διαφορές single-processor αρχιτεκτονικών και SoCs

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

Παράλληλος προγραμματισμός: Σχεδίαση και υλοποίηση παράλληλων προγραμμάτων

ΕΝΣΩΜΑΤΩΜΕΝΑ ΣΥΣΤΗΜΑΤΑ ΤΕΙ ΗΠΕΙΡΟΥ- ΣΤΕΦ ΤΜΗΜΑ ΜΗΧ. ΠΛΗΡΟΦΟΡΙΚΗΣ Τ.Ε.

Phys460.nb Solution for the t-dependent Schrodinger s equation How did we find the solution? (not required)

Παράλληλος προγραμματισμός: Σχεδίαση και υλοποίηση παράλληλων προγραμμάτων

Σχετικά με την CBS εκ. Κύκλος εργασιών. Partners. 165 εργαζόμενοι. Μηχανικοί. Developers. Sales & Consultants. 34 Συνεργασίες.

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

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

CMOS Technology for Computer Architects

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

Finite Field Problems: Solutions

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

Right Rear Door. Let's now finish the door hinge saga with the right rear door

Επιστημονικοί Υπολογισμοί - Μέρος ΙΙΙ: Παράλληλοι Υπολογισμοί

Παράλληλος Προγραμματισμός με OpenCL

Ε-85: Ειδικά Θέµατα Λογισµικού

Παράλληλος προγραμματισμός: παράλληλες λ υπολογιστικές πλατφόρμες και ανάλυση προγραμμάτων

ΤΕΧΝΙΚΕΣ ΑΠΟΔΟΤΙΚΗΣ ΧΡΗΣΗΣ ΤΟΥ ΕΘΝΙΚΟΥ ΥΠΕΡΥΠΟΛΟΓΙΣΤΙΚΟΥ ΣΥΣΤΗΜΑΤΟΣ ARIS Αθήνα, 17 Δεκεµβρίου2015 Ιωάννης Λιαµπότης iliaboti at grnet.

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

6.003: Signals and Systems. Modulation

ΥΠΟΛΟΓΙΣΤΙΚΗ ΧΗΜΕΙΑ ΜΕ ΕΦΑΡΜΟΓΕΣ ΣΕ ΜΟΡΙΑ, ΥΛΙΚΑ, ΠΕΡΙΒΑΛΛΟΝ. Ι ΑΣΚΟΝΤΕΣ: Μαρία Κανακίδου, Σταύρος Φαράντος, Γιώργος Φρουδάκης

HOMEWORK 4 = G. In order to plot the stress versus the stretch we define a normalized stretch:

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

Η επικράτηση των ψηφιακών κυκλωμάτων 1o μέρος

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

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

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

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

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

Κεφάλαιο 1ο Πολυπρογραμματισμός Πολυδιεργασία Κατηγορίες Λειτουργικών Συστημάτων

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

«Σχεδιασμός Ψηφιακών Συστημάτων σε FPGA» Εαρινό εξάμηνο

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

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

«Θεσμικό πλαίσιο για την Ενεργειακή Αποδοτικότητα και την Εξοικονόμηση Ενέργειας στο κτιριακό και βιομηχανικό τομέα»

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

TMA4115 Matematikk 3

Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Ψηφιακή Οικονομία. Διάλεξη 7η: Consumer Behavior Mαρίνα Μπιτσάκη Τμήμα Επιστήμης Υπολογιστών

Ιστορία των επεξεργαστών (CPUs)

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

Cilk: Φιλοσοφία και Χρήση

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

Προχωρηµένα Θέµατα Αρχιτεκτονικής

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΤΟΜΕΑΣ ΥΔΡΑΥΛΙΚΗΣ ΚΑΙ ΠΕΡΙΒΑΛΛΟΝΤΙΚΗΣ ΤΕΧΝΙΚΗΣ. Ειδική διάλεξη 2: Εισαγωγή στον κώδικα της εργασίας

GPU. CUDA GPU GeForce GTX 580 GPU 2.67GHz Intel Core 2 Duo CPU E7300 CUDA. Parallelizing the Number Partitioning Problem for GPUs

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

Κυκλωμάτων» Χειμερινό εξάμηνο

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

Προγραµµατισµός Συστηµάτων Πραγµατικού Χρόνου

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

ΠΑΝΔΠΗΣΖΜΗΟ ΠΑΣΡΩΝ ΣΜΖΜΑ ΖΛΔΚΣΡΟΛΟΓΩΝ ΜΖΥΑΝΗΚΩΝ ΚΑΗ ΣΔΥΝΟΛΟΓΗΑ ΤΠΟΛΟΓΗΣΩΝ ΣΟΜΔΑ ΤΣΖΜΑΣΩΝ ΖΛΔΚΣΡΗΚΖ ΔΝΔΡΓΔΗΑ

Capacitors - Capacitance, Charge and Potential Difference

Πολιτική Πρόσβασης στο σύστημα ARIS και στα άλλα Ευρωπαϊκά υπολογιστικά συστήματα

ΤΕΧΝΙΚΕΣ ΑΠΟΔΟΤΙΚΗΣ ΧΡΗΣΗΣ ΤΟΥ ΕΘΝΙΚΟΥ ΥΠΕΡΥΠΟΛΟΓΙΣΤΙΚΟΥ ΣΥΣΤΗΜΑΤΟΣ ARIS Αθήνα, 25 Οκτωβρίου 2016 Ιωάννης Λιαμπότης iliaboti at grnet.

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές

Jesse Maassen and Mark Lundstrom Purdue University November 25, 2013

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

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

CY - INDUSTRY SURVEY Serial number.

Προσομοίωση BP με το Bizagi Modeler

(1) Describe the process by which mercury atoms become excited in a fluorescent tube (3)

Λογικά σύμβολα των CPU, RAM, ROM και I/O module

Advanced Subsidiary Unit 1: Understanding and Written Response

Transcript:

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

Περιεχόμενο μαθήματος Ζητήματα παράλληλων αρχιτεκτονικών Κατηγορίες παράλληλων αρχιτεκτονικών Δίκτυα διασύνδεσης Παράλληλος προγραμματισμός Σχεδιασμός παράλληλων προγραμμάτων Ζητήματα υλοποίησης: προγραμματιστικά μοντέλα, γλώσσες και εργαλεία Αλληλεπίδραση εφαρμογών - αρχιτεκτονικής Εργαστήριο και εργασίες: Παραλληλοποίηση προγραμμάτων Μετρήσεις επίδοσης

Διαδικαστικά Διαλέξεις: Τρίτη 16:15-19:00, Αίθουσα 06 Εργαστήριο: Ίδιες ώρες με τις διαλέξεις, είτε στο Εργαστήριο Υπολογιστικών Συστημάτων (Κτ. Υπολογιστή) είτε στην αίθουσα Σχήμα βαθμολογίας: 50% γραπτό, 50% εργαστήριο. Απαιτείται προβιβάσιμος βαθμός στο γραπτό. Βιβλίο-σημειώσεις:, Γ. Παπακωνσταντίνου, Θ. Θεοχάρης, Π. Τσανάκας Σημειώσεις Διαφάνειες μαθημάτων Λίστα μαθήματος: http://lists.cslab.ece.ntua.gr/mailman/listinfo/parlab Γραφτείτε στη λίστα!: Ερωτήσεις- απορίες Ανακοινώσεις (επίσημες!)

Διαφημίζοντας το μάθημα Η παραλληλία υπάρχει οπουδήποτε υπάρχουν πολλαπλές λειτουργικές μονάδες: στην παραγωγή, στην κατασκευή, κλπ, δηλαδή σχεδόν παντού! Παραλληλία στα υπολογιστικά συστήματα: Στο εσωτερικό του επεξεργαστή: ILP και pipelines vector processing Στο επίπεδο του λειτουργικού για την αξιοποίηση των πόρων του συστήματος (CPU, I/O devices) Σε πολυπύρηνα συστήματα Σε υπερυπολογιστικά συστήματα με χιλιάδες επεξεργαστές Παράλληλος προγραμματισμός Παραδοσιακά για επιστημονικές εφαρμογές σε υπερυπολογιστές Πρόσφατα για ΟΛΕΣ τις εφαρμογές σε πολυπύρηνους επεξεργαστές Ο παράλληλος προγραμματισμός είναι trendy!!!

Τι θα μάθω Ζητήματα αρχιτεκτονικής που αφορούν τα συστήματα παράλληλης επεξεργασίας Ποιες είναι οι μεγάλες αρχιτεκτονικές κλάσεις παράλληλων συστημάτων Πως διασυνδέονται οι υπολογιστικοί κόμβοι (δίκτυα διασύνδεσης) «Μεθοδολογίες» σχεδίασης παράλληλων προγραμμάτων Γλώσσες, προγραμματιστικά μοντέλα και εργαλεία παράλληλου προγραμματισμού: MPI OpenMP CUDA Cilk PGAS

Supercomputers Για δεκαετίες: parallel computing = supercomputing Συνεργασία πολλών επεξεργαστών για την επίλυση επιστημονικών προβλημάτων: Επιστήμες μηχανικού (ρευστοδυναμική, στατική, κλπ) Επιστήμες της γης και του διαστήματος (πρόγνωση καιρού/σεισμών/πυρκαγιάς, μαγνητικές καταιγίδες, αστρονομία, κοσμολογία, κλπ) Επιστήμες της ζωής (ανάλυση DNA, πρωτεϊνών) Οικονομικές επιστήμες Κοινωνικές επιστήμες Εφαρμογές number crunching με ακόρεστη «δίψα» για υπολογιστική δύναμη Πλατφόρμα εκτέλεσης: υπερυπολογιστές με χιλιάδες επεξεργαστικές μονάδες

www.top500.org

www.top500.org

Top systems

Top systems

Κλάσεις Υπολογιστών Υψηλών Επιδόσεων Δύο μεγάλες αρχιτεκτονικές κλάσεις: Cluster: εμπορικό δίκτυο διασύνδεσης και μέρη Πλεονεκτήματα : Οικονομικότερες λύσεις Ευκολία στην συναρμολόγηση, ρύθμιση και λειτουργία Μειονεκτήματα : Λιγότερο «κλιμακώσιμο» (?) «Μετριότερη» επίδοση (?) Περισσότερο ενεργοβόρο Custom built: ειδικά κατασκευασμένο δίκτυο διασύνδεσης Πλεονεκτήματα : «Κλιμακώσιμο» Υψηλή επίδοση Χαμηλότερη κατανάλωση ενέργειας Μειονεκτήματα : Υψηλό κόστος

Ταξινόμηση ΥΥΕ Υποκλάσεις (τύποι): Cluster(*): Homogeneous cluster: βασίζεται σε ομογενείς CPUs Heterogeneous cluster: βασίζεται σε ετερογενείς CPUs Custom built: MPP(*): Super-scalar CPU με μέτριο ή χωρίς πολυνηματισμό Vector: Κόμβοι διανυσματικών μονάδων MMT: Μαζικά πολυνηματικές CPUs Άλλοι όροι Thin cluster node: μικρό μέγεθος υπολογιστικών μονάδων, μνήμης και Ι/Ο (π.χ. 2-4 πυρήνες) Fat cluster node: μεγάλο μέγεθος υπολογιστικών μονάδων, μνήμης και Ι/Ο (π.χ.. Περισσότεροι από 16 πυρήνες) Constellation (*) συστοιχία P 1 κόμβων με P 2 πυρήνες (P 2 >P 1 ) Accelerated: κόμβοι περιλαμβάνουν επιταχυντές HW (π.χ. GP-GPU, FPGA) (*) όροι TOP500

Timeline: distribution of architectures in Top500

Processor families share Nov 2013 Opteron 6272/6274/6276 Intel Nehalem Opteron Power

Επιταχυντές Κάρτες γραφικών Καλύτερη επίδοση ανά μονάδα ισχύος και κόστους από τους επεξεργαστές Μαζικά πολυπύρηνες Διαχείριση ιεραρχίας μνήμης από το λογισμικό Χαμηλή επίδοση σε εφαρμογές με πολύπλοκες ροές ελέγχου Απαιτούν εξειδικευμένα προγραμματιστικά μοντέλα και εργαλεία

Interconnect share Nov 2013

Top500: Nov 2013 list (countries)

Top500 highlights Tianhe-2, 3.200.000 cores Intel Ivy Bridge (12C, 2.2GHz), Intel Xeon Phi accelerator Custom interconnect 33.9PFlops China 135 / 500 cluster με Gigabit Ethernet Μόνο 6 από αυτά στο Top100 207 / 500 cluster με Infiniband 2 από αυτά στο Top10 ~10000 πυρήνες απαιτούνται για την είσοδο στο top500

Intel Xeon Sandy-Bridge, up to 8 cores Ivy-Bridge, up to 12 cores (24 threads) Haswell (server with 18-20 threads expected in 2014) AMD Opteron IBM Interlagos, 4, 8,,12, 16 cores Multi-core processors Power 7 4, 6, 8-core (4 threads/core), up to 4 CPUs per system (up to 128 hw threads) Power 8, 12-core, 8 hw threads (96 hw threads in total) Tilera Tile TILE64, 64-core TILE-Gx, 100-core Sun UltraSPARC T3 sixteen-core, 128-concurrent-threads ARM Cortex-A9 MPCore (1-4 cores)

Technological trends: From Moore s law The number of transistors on integrated circuits doubles approximately every two years (Moore, 1965) More good news! transistors become faster as well! CPU speed doubles every 18 months (David House) What to do with so many, fast transistors? Instruction Level Parallelism! (ILP) Deeper pipelines Faster clock speeds Larger caches Better branch predictors Out of order execution Superscalar Faster processing cores at no programming cost

Technological trends: From Moore s law

From wikipedia: Technological trends: to Dennard Scaling MOSFETs continue to function as voltage-controlled switches while all key figures of merit such as layout density, operating speed, and energy efficiency improve provided geometric dimensions, voltages, and doping concentrations are consistently scaled to maintain the same electric field (Dennard 1974) P = CV 2 f (C = count, V = voltage, f = frequency) Increase in device count Higher operating frequencies Lower supply voltages Constant power / chip!!!

what a wonderful world

what a wonderful world Is it? In ~2004 we hit the ILP wall Transistors could not be utilized to increase serial performance Logic became too complex Performance attained was very low compared to power consumption

what a wonderful world Is it? In ~2004 we hit the ILP wall Transistors could not be utilized to increase serial performance Logic became too complex Performance attained was very low compared to power consumption Solution: Multicore CPUs! But.. The free lunch is over welcome to the jungle! (http://herbsutter.com/welcome-to-the-jungle/) We need parallel software

The end of Dennard scaling? Transistors are becoming too small A lot of energy is lost in leakage Voltage has not dropped significantly during the last few years

If P = CV 2 f C can still increase as predicted my Moore s law transistors get shorter number of cores increase V cannot drop drastically We need to keep f low But P may take off. The power wall

Ok.. Is that all?

Ok.. Is that all? No

Ok.. Is that all? No CPU to memory gap The memory wall: CPUs are much faster than memory and applications may starve waiting for data from main memory

Two ways ahead The catapult way: Advances through technological breakthrough The parkour way: Redesign software and algorithms This is what the course Parallel Processing Systems is about

Παράλληλες πλατφόρμες εκτέλεσης Η «ιδανική» παράλληλη πλατφόρμα PRAM Ταξινόμηση του Flynn Ρεαλιστικές πλατφόρμες: Κοινής μνήμης Κατανεμημένης μνήμης Υβριδικές Σύνοψη του μαθήματος Αναλυτική μοντελοποίηση παράλληλων προγραμμάτων Αξιολόγηση επίδοσης Μοντελοποίηση και πρόβλεψη της επίδοσης

Σχεδιασμός παράλληλων προγραμμάτων Σύνοψη του μαθήματος Κατανομή δεδομένων και υπολογισμών task centric vs data centric tasks, processes and processors Αλληλεπίδραση μεταξύ tasks: συγχρονισμός και επικοινωνία Υλοποίηση παράλληλων προγραμμάτων Προγραμματιστικά μοντέλα Κοινού χώρου διευθύνσεων Ανταλλαγής μηνυμάτων Προγραμματιστικές δομές (πώς μπορώ να «μιλήσω» παράλληλα;) Ζητήματα επίδοσης και αλληλεπίδραση με την αρχιτεκτονική (γιατί δεν παίρνω την επίδοση που θέλω;)

Σύνοψη του μαθήματος Συγχρονισμός: Από το hardware στις δομές συγχρονισμού υψηλού επιπέδου Κλειδώματα (locks) Ταυτόχρονες δομές δεδομένων (concurrent data structures) Transactional memory Δίκτυα διασύνδεσης