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

Σχετικά έγγραφα
Παράλληλη Επεξεργασία Κεφάλαιο 8 ο Προγράμματα Περάσματος Μηνυμάτων

Παράλληλη Επεξεργασία Κεφάλαιο 7 ο Αρχιτεκτονική Συστημάτων Κατανεμημένης Μνήμης

Παράλληλη Επεξεργασία Κεφάλαιο 2 Παραλληλισμός Δεδομένων

Παράλληλη Επεξεργασία Κεφάλαιο 5 Μοίρασμα Δεδομένων

Παράλληλη Επεξεργασία Κεφάλαιο 6 ο Σύγχρονος Παραλληλισμός

Παράλληλη Επεξεργασία Κεφάλαιο 4 Επικοινωνία Διεργασιών

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

Παράλληλη Επεξεργασία Κεφάλαιο 10 ο Αντίγραφα Εργαζομένων

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

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

13.2 Παράλληλος Προγραµµατισµός Γλωσσάρι, Σελ. 1

Διπλωματική Εργασία του φοιτητή του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών της Πολυτεχνικής Σχολής του Πανεπιστημίου Πατρών

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

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

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

Τεχνολογικά Επιτεύγµατα. Πλεονεκτήµατα. Ορισµός Κατανεµηµένου Συστήµατος. Μειονεκτήµατα. E-03: Λειτουργικά Συστήµατα ΙΙ 6. Εαρινό Εξάµηνο

Νήµατα. ιεργασίες και νήµατα Υλοποίηση νηµάτων Ελαφριές διεργασίες Αξιοποίηση νηµάτων. Κατανεµηµένα Συστήµατα 10-1

Κεφάλαιο 3. Διδακτικοί Στόχοι

Αμοιβαίος αποκλεισμός

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

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

Παράλληλος προγραμματισμός περιστροφικών αλγορίθμων εξωτερικών σημείων τύπου simplex ΠΛΟΣΚΑΣ ΝΙΚΟΛΑΟΣ

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

Παράλληλη Επεξεργασία

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

Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1

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

Η πολυνηματική γλώσσα προγραμματισμού Cilk

Προβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη)

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

Μετρικές & Επιδόσεις. Κεφάλαιο V

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

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

Υ- 07 Παράλληλα Συστήματα Συνέπεια και συνοχή μνήμης

Προβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη)

10. Με πόσους και ποιους τρόπους μπορεί να αναπαρασταθεί ένα πρόβλημα; 11. Περιγράψτε τα τρία στάδια αντιμετώπισης ενός προβλήματος.

Το Πρόβληµα Οµοφωνίας Σύγχρονα Συστήµατα Μεταβίβασης Μηνύµατος Μοντέλο Κατάρρευσης (crash model) Οι διεργασίες µπορούν να σταµατούν να εκτελούνται σε

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ Ακαδημαϊκό έτος Α εξάμηνο (χειμερινό)

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

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

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

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

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

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

Network Algorithms and Complexity Παραλληλοποίηση του αλγορίθμου του Prim. Αικατερίνη Κούκιου

Κεφάλαιο 4 Διεργασίες Β Τάξη ΕΠΑΛ

Minimum Spanning Tree: Prim's Algorithm

Προβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη)

Εισαγωγή στην Πληροφορική Προγραμματισμός-Λειτουργικά

Ένα αφαιρετικό πραγματικού χρόνου μοντέλο λειτουργικού συστήματος για MPSoC

2. Στοιχεία Αρχιτεκτονικής Παράλληλων Υπολογιστών... 45

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ Ακαδημαϊκό έτος Α εξάμηνο (χειμερινό)

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

ΤΕΙ Δυτικής Ελλάδας Τμήμα Μηχανικών Πληροφορικής ΤΕ. Τεχνολογίες Υπολογιστικού Νέφους

Λειτουργικά Συστήματα Η/Υ

Εικονική Μνήµη. Κεφάλαιο 8. Dr. Garmpis Aristogiannis - EPDO TEI Messolonghi

Εισαγωγικά & Βασικές Έννοιες

Διάλεξη 13: Κατανεμημένη Κοινόχρηστη Μνήμη. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι

Μεταγλωττιστές. Γιώργος Δημητρίου. Μάθημα 1 ο. Πανεπιστήμιο Θεσσαλίας - Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών

ΠΕΡΙΕΧΟΜΕΝΑ 1 ΚΕΦΑΛΑΙΟ ΟΙ ΥΠΟΛΟΓΙΣΤΕΣ ΑΠΟ ΤΗΝ ΑΡΧΑΙΟΤΗΤΑ ΜΕΧΡΙ ΣΗΜΕΡΑ Ιστορική αναδρομή Υπολογιστικές μηχανές

Προβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη)

Κατανεμημένα Συστήματα με Java. Ενότητα # 4: Αμοιβαίος αποκλεισμός Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

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

Πρωτόκολλα Ελέγχου προσπέλασης μέσου

ΔΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ. Λειτουργικά Συστήματα Ι. Διδάσκων: Καθ. Κ. Λαμπρινουδάκης ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι

Εισαγωγικά & Βασικές Έννοιες

ΑΕΠΠ Ερωτήσεις θεωρίας

Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1

Εργαστήριο Λειτουργικών Συστημάτων - Αλγόριθμοι Χρονοπρογραμματισμού. Εργαστηριακή Άσκηση

εισαγωγικές έννοιες Παύλος Εφραιμίδης Δομές Δεδομένων και

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2

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

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

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

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

Πληροφορική 2. Γλώσσες Προγραμματισμού

Πρόβλημα 37 / σελίδα 207

Κεφάλαιο 3 Πολυπλεξία

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ

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

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

Θέματα Προγραμματισμού Η/Υ

Γκύζη 14-Αθήνα Τηλ :

Λειτουργικά Συστήματα Η/Υ

Εισαγωγή. Τεχνολογία Πολυµέσων 01-1

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι ΔΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ. Διδάσκοντες: Καθ. Κ. Λαμπρινουδάκης Δρ. Α. Γαλάνη Λειτουργικά Συστήματα

Κεφάλαιο 2.3: Προγραμματισμός. Επιστήμη ΗΥ Κεφ. 2.3 Καραμαούνας Πολύκαρπος

Λειτουργικά Συστήµατα

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

Αλγόριθμοι. Βασικές έννοιες ΤΕΛΟΣ

Εισαγωγή στα Λειτουργικά συστήματα Ι. Καθηγητής Κώστας Αναγνωστόπουλος

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

Γλώσσες Προγραμματισμού Μεταγλωττιστές

Συστήματα Αναμονής. Ενότητα 1: Εισαγωγή. Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ

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

Λειτουργικά Συστήματα (Λ/Σ)

Transcript:

Παράλληλη Επεξεργασία Κεφάλαιο 1 Γιατί Παράλληλος Προγραμματισμός; Κωνσταντίνος Μαργαρίτης Καθηγητής Τμήμα Εφαρμοσμένης Πληροφορικής Πανεπιστήμιο Μακεδονίας kmarg@uom.gr http://eos.uom.gr/~kmarg Αρετή Καπτάν Υποψήφια Διδάκτορας Τμήμα Εφαρμοσμένης Πληροφορικής Πανεπιστήμιο Μακεδονίας areti@uom.gr http://eos.uom.gr/~areti 1

Γνωστικές περιοχές Παράλληλων και Κατανεμημένων Αλγορίθμων Οι αλγόριθμοι Οι γλώσσες προγραμματισμού Η αρχιτεκτονική των υπολογιστών Καλές τεχνικές αποσφαλμάτωσης και εκτέλεσης υπολογισμών 2

Γλώσσα Παράλληλου Προγραμματισμού Multi-Pascal Υλοποίηση του μεταγλωττιστή σε Pascal Σύνταξη παρόμοια με αυτή της Pascal Ρεαλιστική Προσομοίωση Παράλληλων Συστημάτων Διαμοιραζόμενης Μνήμης Ρεαλιστική Προσομοίωση Παράλληλων Συστημάτων Κατανεμημένης Μνήμης Δυνατότητες Καθορισμού του Πλήθους Επεξεργαστών και της Κατανεμημένης Τοπολογίας Παροχή ενός Διαλογικού Αποσφαλματωτή Εμφάνιση Στατιστικών και Διαγραμμάτων Απόδοσης 3

Χαρακτηριστικά ενός Παράλληλου Συστήματος Ύπαρξη δύο ή περισσότερων επεξεργαστών Οι επεξεργαστές είναι ικανοί να λειτουργούν ταυτόχρονα Οι επεξεργαστές μπορούν να μοιράζονται δεδομένα και να επικοινωνούν μεταξύ τους 4

Αρχιτεκτονικές Προσεγγίσεις για την Υλοποίηση ενός Παράλληλου Συστήματος Η διαμοιραζόμενη μνήμη (shared memory) = Παράλληλα Συστήματα Διαμοιραζόμενης Μνήμης (Multiprocessing Systems) Το πέρασμα μηνυμάτων (message passing) = Παράλληλα Συστήματα Κατανεμημένης Μνήμης (Multicomputers) 5

Οργάνωση Συστήματος Διαμοιραζόμενης Μνήμης και Κοινό Δίαυλο 6

Προβλήματα που προκύπτουν απότοδιαμοιρασμότηςμνήμης Ανταγωνισμός των επεξεργαστών για πρόσβαση στη μνήμη Αύξηση του ανταγωνισμού με την αύξηση των επεξεργαστών Επεξεργαστές σε αναμονή (Χρόνος Καθυστέρησης) 7

Τεχνικές μείωσης του ανταγωνισμού Χρήση τοπικών Cache σε κάθε επεξεργαστή (cache coherence, snooping cache) Διαίρεση της κοινής μνήμης σε χωριστά τμήματα που μπορούν να προσπελαστούν παράλληλα από διαφορετικούς επεξεργαστές Εξάλειψη της διαμοιραζόμενης μνήμης, χρήση τοπικώνμνημώνσεκάθεεπεξεργαστή (Κατανεμημένη μνήμη) 8

Κρυφή μνήμη σε σύστημα διαμοιραζόμενης μνήμης 9

Σύστημα διαμοιραζόμενης μνήμης με πολλαπλά τμήματα 10

Ραβδεπαφικό δίκτυο επεξεργαστή - μνήμης 11

Δίκτυο πεταλούδας 12

Δίκτυο διαπλοκής - εναλλαγής 13

Οργάνωση συστήματος κατανεμημένης μνήμης 14

Χαρακτηριστικά Παράλληλων Συστημάτων Κατανεμημένης Μνήμης Τοπική μνήμη για κάθε επεξεργαστή Αλληλεπίδραση επεξεργαστών μέσω ενός μηχανισμού περάσματος μηνυμάτων Ανταλλαγή δεδομένων τοπικών μνημών μέσω του δικτύου επικοινωνίας Τοπολογίες δικτύου επικοινωνίας 15

Διεργασία Διεργασία ονομάζουμε τη σειρά (διαδοχή) των λειτουργιών που μπορούν να εκτελεστούν από έναν απλό επεξεργαστή. Η δραστηριότητα της κάθε διεργασίας συντελεί στην ολοκλήρωση ενός απλού υπολογισμού. 16

Η Διεργασία στις Παράλληλες Γλώσσες Προγραμματισμού Δημιουργία και ανάθεση διεργασιών. Διαθεσιμότητα δεδομένων στις διεργασίες. Αλληλεπίδραση διεργασιών. Συγχρονισμός διεργασιών. 17

Παράλληλη ταξινόμηση σειράς (Μη ταξινομημένη) ---------------------------------------------------------------- LIST RANK ---------------------------------------------------------------- 15 4 10 3 39 7 8 2 22 6 4 0 19 5 6 1 ---------------------------------------------------------------- 18

Εκτίμηση Απόδοσης Παράλληλων Προγραμμάτων Παράλληλος χρόνος εκτέλεσης Σειριακός χρόνος εκτέλεσης Επιτάχυνση Απόδοση του επεξεργαστή Απόδοση του συστήματος 19

Σειριακά Συστήματα Υλικό Σειριακών Συστημάτων Επεξεργαστής Μνήμη Σειριακή Γλώσσα Προγραμματισμού Διαδικασία Μεταβλητές 20

Παράλληλα Συστήματα Διαμοιραζόμενης Μνήμης Υλικό Παράλληλων Συστημάτων Διαμοιραζόμενης Μνήμης Multi-Pascal Επεξεργαστής Διαμοιραζόμενη Μνήμη Διεργασία Διαμοιραζόμενες Μεταβλητές 21

Παράλληλα Συστήματα Κατανεμημένης Μνήμης Υλικό Παράλληλων Συστημάτων Κατανεμημένης Μνήμης Multi-Pascal Επεξεργαστής Τοπική Μνήμη Δίκτυο Επικοινωνίας Διεργασία Τοπικές Μεταβλητές Μεταβλητές Καναλιών 22

Χαρακτηριστικά της Multi-Pascal Υποσύνολο της Pascal. Διαλογικός αποσφαλματωτής. Εργαλεία καταγραφής της απόδοσης. Προσομοίωση διαμοιραζόμενης και κατανεμημένης μνήμης. 23

Τεχνικές Οργάνωσης Παράλληλων Αλγορίθμων Παραλληλισμός Δεδομένων (Data Parallelism) Κατάτμηση Δεδομένων (Data Partitioning) Ασύγχρονος Αλγόριθμος (Asynchronous Algorithm) Σύγχρονη Επανάληψη (Synchronous Iteration) Πολλαπλοί Εργαζόμενοι (Replicated Workers) Υπολογιστική Διαδικασία Διασωλήνωσης (Pipelined Computation) 24

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