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



Σχετικά έγγραφα
Εισαγωγή στην πληροφορική

Σχεδίαση Δικτύων Υπολογιστών

Νέες Τεχνολογίες και Καλλιτεχνική Δημιουργία

Ειδικά Θέματα Δικτύων Ι

Εισαγωγή στη Δικτύωση Υπολογιστών

Εισαγωγή στους Αλγορίθμους

Εισαγωγή στους Αλγορίθμους

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

Εισαγωγή στους Αλγορίθμους Ενότητα 9η Άσκηση - Αλγόριθμος Prim

Ειδικά Θέματα Δικτύων ΙΙ

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

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

Σχεδίαση Δικτύων Υπολογιστών

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

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

Εισαγωγή στους Αλγορίθμους

Ειδικά Θέματα Δικτύων ΙΙ. Ενότητα 7: Δρομολόγηση κατάστασης ζεύξης (Μέρος 1) Νικολάου Σπύρος Τμήμα Μηχανικών Πληροφορικής ΤΕ

Ειδικά Θέματα Δικτύων Ι

Μηχανολογικό Σχέδιο Ι

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Λογιστική Κόστους Ενότητα 12: Λογισμός Κόστους (2)

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

Ειδικά Θέματα Δικτύων ΙΙ. Ενότητα 8: Δρομολόγηση κατάστασης ζεύξης (Μέρος 2) Νικολάου Σπύρος Τμήμα Μηχανικών Πληροφορικής ΤΕ

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

Εισαγωγή στη Διοίκηση Επιχειρήσεων Ενότητα 3: Λήψη Αποφάσεων Επίκ. Καθηγητής Θεμιστοκλής Λαζαρίδης Τμήμα Διοίκηση Επιχειρήσεων (Γρεβενά)

Ειδικά Θέματα Δικτύων Ι

ΟΙΚΟΝΟΜΕΤΡΙΑ. Ενότητα 3: Πολλαπλή Παλινδρόμηση. Αναπλ. Καθηγητής Νικόλαος Σαριαννίδης Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

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

Σχεδίαση Δικτύων Υπολογιστών

Λογιστική Κόστους Ενότητα 8: Κοστολογική διάρθρωση Κύρια / Βοηθητικά Κέντρα Κόστους.

Εισαγωγή στους Αλγορίθμους Ενότητα 9η Άσκηση - Αλγόριθμος Kruskal

Ιστορία της μετάφρασης

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

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

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

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

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Ειδικά Θέματα Δικτύων Ι

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 1

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Ειδικά Θέματα Δικτύων Ι

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

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

Μαθηματική Ανάλυση ΙI

Μαθηματική Ανάλυση Ι

Διοίκηση Εξωτερικής Εμπορικής Δραστηριότητας

Προγραμματισμός H/Y Ενότητα 4: Δείκτες. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Τεχνικές Εκτίμησης Υπολογιστικών Συστημάτων Ενότητα 1: Εισαγωγή. Γαροφαλάκης Ιωάννης Πολυτεχνική Σχολή Τμήμα Μηχ/κών Η/Υ & Πληροφορικής

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

Εισαγωγή στους Αλγορίθμους Ενότητα 10η Άσκηση Αλγόριθμος Dijkstra

Ειδικά Θέματα Δικτύων ΙΙ

Εισαγωγή στην Διοίκηση Επιχειρήσεων

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

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Αλγόριθμοι και πολυπλοκότητα Συγχωνευτική Ταξινόμηση

Ειδικά Θέματα Δικτύων Ι

Τηλεπικοινωνιακά Δίκτυα Ευρείας Ζώνης Ενότητα 8: MPLS και Τηλεπικοινωνιακή Κίνηση

Σχεδίαση Δικτύων Υπολογιστών. Ενότητα 8: Δρομολόγηση κατάστασης ζεύξης (Μέρος 1 ο ) Άγγελος Μιχάλας Τμήμα Μηχανικών Πληροφορικής ΤΕ

Λογιστική Κόστους Ενότητα 10: Ασκήσεις Προτύπου Κόστους Αποκλίσεων.

Τηλεματική και Νέες Υπηρεσίες

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

Βάσεις Δεδομένων. Ενότητα 1: Εισαγωγή στις Βάσεις δεδομένων. Πασχαλίδης Δημοσθένης Τμήμα Ιερατικών σπουδών

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Διακριτά Μαθηματικά. Ενότητα 7: Σχέσεις και Συναρτήσεις

Εκκλησιαστικό Δίκαιο. Ενότητα 10η: Ιερά Σύνοδος της Ιεραρχίας και Διαρκής Ιερά Σύνοδος Κυριάκος Κυριαζόπουλος Τμήμα Νομικής Α.Π.Θ.

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

Λογιστική Κόστους Ενότητα 5: Προορισμός Κόστους

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

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

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Λογιστική Κόστους Ενότητα 11: Λογισμός Κόστους (1)

Σχεδίαση Δικτύων Υπολογιστών

Διοικητική Λογιστική

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

Βάσεις Περιβαλλοντικών Δεδομένων

Θερμοδυναμική. Ανοικτά Ακαδημαϊκά Μαθήματα. Πίνακες Νερού σε κατάσταση Κορεσμού. Γεώργιος Κ. Χατζηκωνσταντής Επίκουρος Καθηγητής

Σχεδίαση Δικτύων Υπολογιστών

Σχεδίαση Δικτύων Υπολογιστών

Τεχνολογία Πολυμέσων. Ενότητα 6: Υπερκείμενο - Υπερμέσα. Νικολάου Σπύρος Τμήμα Μηχανικών Πληροφορικής ΤΕ

Οργάνωση και Διοίκηση Πωλήσεων Ενότητα 8: ΟΡΓΑΝΩΣΗ ΤΗΣ ΔΥΝΑΜΗΣ ΠΩΛΗΤΩΝ

Λογιστική Κόστους Ενότητα 7: Κοστολογική διάρθρωση Κέντρα Κόστους.

Λογιστική Κόστους Ενότητα 11: Λογισμός Κόστους

Ενότητα. Εισαγωγή στις βάσεις δεδομένων

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

Λογιστική Κόστους. Ενότητα 4: ΣΥΜΠΕΡΙΦΟΡΑ - ΦΥΣΗ ΚΟΣΤΟΥΣ. Μαυρίδης Δημήτριος Τμήμα Λογιστικής και Χρηματοοικονομικής

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

Εισαγωγικές έννοιες θεωρίας Συστημάτων Αυτομάτου Ελέγχου

Διοίκηση Επιχειρήσεων

ΑΝΤΙΡΡΥΠΑΝΤΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΑΙΩΡΟΥΜΕΝΩΝ ΣΩΜΑΤΙΔΙΩΝ Ενότητα 2: Αιωρούμενα σωματίδια & Απόδοση συλλογής Αν. Καθ. Δρ Μαρία Α. Γούλα Τμήμα Μηχανικών

Τεχνολογία & Καινοτομία - Αρχές Βιομηχανικής Επιστήμης

Τεχνολογίες & Εφαρμογές Πληροφορικής Ενότητα 7: Τοπικά δίκτυα

Μαθηματική Ανάλυση Ι

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

Αποτυπώσεις Μνημείων και Αρχαιολογικών Χώρων

Τεχνολογία και Καινοτομία - Οικονομική Επιστήμη και Επιχειρηματικότητα

Διεθνείς Οικονομικές Σχέσεις και Ανάπτυξη

ΟΙΚΟΝΟΜΕΤΡΙΑ. Ενότητα 1: Εκτιμητές και Ιδιότητες. Αναπλ. Καθηγητής Νικόλαος Σαριαννίδης Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Αλγόριθμοι και πολυπλοκότητα Ταχυταξινόμηση (Quick-Sort)

Transcript:

Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας Ενότητα 12: Παράδειγμα Νόμου Amdhal. Δυναμικά και Στατικά Δίκτυα Διασύνδεσης. Αξιολόγηση δικτύων Διασύνδεσης. Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών http://arch.icte.uowm.gr/mdasyg Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου άδειας χρήσης, η άδεια χρήσης αναφέρεται ρητώς. 2

Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ψηφιακά Μαθήματα στο Πανεπιστήμιο Δυτικής Μακεδονίας» έχει χρηματοδοτήσει μόνο τη αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους. 3

Σκοπός της Ενότητας Η κατανόηση των βασικών δικτύων διασύνδεσης, και η παρουσίαση των πλεονεκτημάτων και των μειονεκτημάτων κάθε κατηγορίας. 4

Παράδειγμα Νόμου Amdhal (1/2) S=Ts/Tp=1/(ts+tp/p) Ts ακολουθιακός χρόνος εκτέλεσης. Tp Παράλληλος χρόνος εκτέλεσης. ts ποσοστό χρόνου ακολουθιακής εκτέλεσης. tp ποσοστό χρόνου παράλληλης εκτέλεσης. p αριθμός επεξεργαστών. 5

Παράδειγμα Νόμου Amdhal (2/2) Υποθέτουμε ότι χωρίς να επηρεάσουμε την ΕΕ η κεντρική μονάδα θα μπορούσε να βελτιωθεί κατά συντελεστή 5, με πενταπλάσιο κόστος. Η CPU χρησιμοποιείται κατά 50%, και η ΕΕ τον υπόλοιπο χρόνο. Αν η CPU κοστίζει το 1/3 του ολικού κόστους του υπολογιστή, συμφέρει η επένδυση; Δυνητική επιτάχυνση S=1/(0.5+0.5/5) = 1.67. Νέο Κόστος Κ=(2/3)*1 + (1/3)*5 = 2.33. => Εφόσον το κόστος είναι 2.33 ενώ η επιτάχυνση 1.67 δε θεωρείται συμφέρουσα επένδυση. 6

Οι πολλαπλοί επεξεργαστές στο ίδιο σύστημα αυξάνουν την πολυπλοκότητα Η χρήση πολλών επεξεργαστών στο ίδιο υπολογιστικό σύστημα εισάγει ένα επιπλέον βαθμό πολυπλοκότητας σε σχέση με ένα σύστημα ενός επεξεργαστή λόγο της ανάγκης επικοινωνίας για συνεργασία πάνω στην επίλυση ενός προβλήματος. Αυτό είναι αναμενόμενο αφού οι επεξεργαστές πρέπει να συνεργαστούν για την αντιμετώπιση ενός κοινού προβλήματος. Θα πρέπει να έχουν πρόσβαση σε κοινά δεδομένα. 7

Δίκτυα διασύνδεσης παράλληλων υπολογιστών Από πλευράς αρχιτεκτονικής υπάρχουν 2 προσεγγίσεις ικανοποίησης της διαμοίρασης κοινών δεδομένων. Συστήματα Μοιραζόμενης Μνήμης - Shared Memory Systems (πρόσβαση σε κοινά δεδομένα). Συστήματα Κατανεμημένης Μνήμης - Distributed Memory Systems (επικοινωνία μέσω περάσματος μηνύματος). 8

Επικοινωνία και Δίκτυα Διασύνδεσης Η επικοινωνία ανάμεσα στους επεξεργαστές και στα δεδομένα είναι πολύ σημαντική. Έχουν αναπτυχθεί διάφορα είδη δικτύων διασύνδεσης (Interconnection Networks, IN) προκειμένου να επιτευχθεί η επικοινωνία. Είτε πρόκειται για διασύνδεση πολύ-υπολογιστών είτε για διασύνδεση πολύ-επεξεργαστών χρησιμοποιούνται δίκτυα διασύνδεσης όπου ανάλογα με το είδος επικοινωνίας καθορίζεται και η ταχύτητα επικοινωνίας. 9

Πρωτόκολλα στα ΔΔ Τα ΔΔ κατανεμημένης μνήμης χρησιμοποιούν διεθνή πρότυπα, προκειμένου να είναι εύκολη η διασύνδεση διαφορετικών υπολογιστών, από διαφορετικούς κατασκευάστες. Τα ΔΔ κοινής μνήμης, επειδή χρησιμοποιούνται από ένα συγκεκριμένο παράλληλο υπολογιστή μιας συγκεκριμένης εταιρίας, δεν ακολουθούν συνήθως διεθνή πρότυπα, αφού δεν υπάρχει ενδιαφέρον για συμβατότητα. 10

Χαρακτηριστικά Επιδόσεων (1/2) Υπάρχουν πάρα πολλά διαφορετικά ή παρόμοια ΔΔ. Το κάθε ΔΔ έχει κάποια χαρακτηριστικά. Τα σημαντικότερα χαρακτηριστικά που βοηθούν στην επιλογή του κατάλληλου ΔΔ είναι: Εύρος ζώνης (bandwidth): μέγιστος ρυθμός μετάδοσης πληροφοριών μέσα στο δίκτυο σε bits per second. Χρόνος πτήσης (flight time): ο χρόνος που χρειάζεται το σήμα για να διανύσει το μήκος των καλωδίων, χωρίς την καθυστέρηση λόγω επεξεργασίας ή αποθήκευσης που εξαρτάται από το φυσικό μέσο. 11

Χαρακτηριστικά Επιδόσεων (2/2) Χρόνος μετάδοσης μηνύματος (transmission time): Εξαρτάται από το πόσα bit είναι το μήνυμα και το εύρος ζώνης. Χρόνος μεταφοράς (transport latency): Χρόνος μετάδοσης + Χρόνος πτήσης. Επιβάρυνση αποστολέα (receiver overhead): Χρόνος που χρειάζεται ο αποστολέας να συσκευάσει το μήνυμα. Επιβάρυνση παραλήπτη (receiver overhead): Χρόνος που χρειάζεται ο παραλήπτης για να αποσυσκευάσει το μήνυμα. 12

Συνολικός Χρόνος μετάδοσης Επιβάρυνση Αποστολέα +. Χρόνος πτήσης +. Μέγεθος Μηνύματος/Εύρος ζώνης +. Επιβάρυνση Παραλήπτη. 13

Παράδειγμα Υπολογισμού για Gigabit ethernet Gigabit Ethernet: 1000MBit/sec. Επιβάρυνση Αποστολέα και παραλήπτη 100μsec, 120μsec. Έστω, μήκος 100μ και μήνυμα 1000byte = 8000bit. Ταχύτητα σε μεταλλικό αγωγό 50% ταχύτητας φωτός ~ 150000Km/sec. Χρόνος πτήσης = 0.1Km/150000 Km/sec = 0.67μsec. Χρόνος μετάδοσης = Μέγεθος μηνύματος / εύρος ζώνης = 8000bit/1000Mbit/sec = 8μsec. Συνολικός χρόνος = (100 + 0.67 + 8 + 120) μsec=228,67μsec. 14

Λειτουργική ταξινόμηση ΔΔ Δίκτυα πελάτη-εξυπηρετητή (client/server): Οι εξυπηρετητές παρέχουν συγκεκριμένες υπηρεσίες στους υπόλοιπους κόμβους π.χ. web server, database server, grid computing,... Ομότιμα δίκτυα (pear-to-pear): Οι κόμβοι είναι ισοδύναμοι και έχουν ίδια προνόμια (π.χ. torrent, distributed file system),... Αυτοσχέδια δίκτυα (ad hoc): Χωρίς κεντρική δομή, συνήθως ασύρματα δίκτυα και χρησιμοποιούνται κυρίως για την μεταφορά μηνυμάτων. 15

2 είναι τα δίκτυα διασύνδεσης παράλληλων υπολογιστών Στατικά δίκτυα διασύνδεσης (Static Interconnection Networks): Όλες οι συνδέσεις πραγματοποιούνται κατά τον σχεδιασμό και προϋπάρχουν (δε δημιουργούνται όταν χρειάζεται μια σύνδεση). Η επικοινωνία γίνεται μέσα από τις προϋπάρχουσες συνδέσεις. Δυναμικά δίκτυα διασύνδεσης (Dynamic Interconnection Networks): Οι συνδέσεις μεταξύ 2 ή περισσοτέρων κόμβων δεν προϋπάρχουν αλλά δημιουργούνται δυναμικά (on the fly) καθώς τα μηνύματα δρομολογούνται μεταξύ των συνδέσμων. 16

Ταξινόμηση δικτύων διασύνδεσης Οι δύο μεγάλες κατηγορίες δικτύων διασύνδεσης υποδιαιρούνται περαιτέρω ανάλογα με τον τρόπο σύνδεσης στις εξής κατηγορίες: Στατικά: Μίας διάστασης (one-dimension, 1D). Δύο διαστάσεων (two-dimension, 2D). Υπερκύβος (Hypercube, HC). Δυναμικά: Βασισμένα σε δίαυλο (bus based): Απλός δίαυλος (single bus). Πολλαπλός δίαυλος (multiple bus). Βασισμένα σε διακόπτη (switch based) : Απλού Σταδίου (single stage). Πολλαπλού Σταδίου (multiple stage). Μεταγωγέα διασταύρωσης (crossbar switch). 17

Σχηματικά η Ταξινόμηση των Δικτύων Διασύνδεσης 18

Αναπαράσταση δικτύων διασύνδεσης Ένα δίκτυο διασύνδεσης αναπαρίσταται σαν ένας γράφος όπου: Οι κόμβοι αντιπροσωπεύουν επεξεργαστές ή μεταγωγείς δικτύου (network switches) ή μονάδες μνήμης. Οι ακμές αντιπροσωπεύουν φυσικούς συνδέσμους μεταξύ κόμβων. 19

2 Παράμετροι Σχεδιασμού Δικτύων Διασύνδεσης Κόστος Υλοποίησης=> Πλήθος ακμών που απαιτούνται. Απόδοση δικτύου=> Χρόνος που απαιτείται για την επικοινωνία 2 κόμβων (π.χ.: CPU CPU ή CPU-Memory). 20

Παράμετροι Τοπολογίας Δικτύων Διασύνδεσης Διάμετρος (diameter): Ορίζεται σαν ο ελάχιστος αριθμός ακμών που συνδέει τους 2 πιο απομακρυσμένους κόμβους μεταξύ τους. Επιδιώκεται να είναι όσο το δυνατόν μικρότερη. Συνεκτικότητα (connenctivity) ή ο αριθμός των ακμών που πρόσκεινται σε κάθε κόμβο. Επιδιώκεται να είναι μια σταθερά ανεξαρτήτως του μεγέθους του δικτύου διασύνδεσης, για την προσθήκη επιπλέον κόμβων με χαμηλό κόστος. Διαμερισιμότητα (partitioning). Ένα παράλληλο υπολογιστικό σύστημα είναι διαμερίσιμο (partitionable) εάν: Το ΔΔ του συστήματος μπορεί να διαμερισθεί σε υποδίκτυα, τα οποία διατηρούν την πλήρη λειτουργικότητα του αρχικού δικτύου. Το παράλληλο σύστημα μπορεί να διαμερισθεί σε ανεξάρτητα υποσυστήματα, με την έννοια ότι κανένα υποσύστημα δεν θα πρέπει να επεμβαίνει στην απρόσκοπτη λειτουργία κάποιου άλλου υποσυστήματος. 21

Διαμερισιμότητα (partitioning) Από τις πιο σημαντικές παραμέτρους είναι η διαμερισιμότητα του δικτύου διασύνδεσης. Τα διαμερίσιμα παράλληλα συστήματα διαθέτουν αρκετά επιθυμητά χαρακτηριστικά, τα οποία είναι πολύ σημαντικά για τη λειτουργία και απόδοση. 22

Χαρακτηριστικά των Διαμερίσιμων Παράλληλων Συστημάτων (1/2) Ανοχή Σφάλματος (fault tolerance): Όταν π.χ. Κάποια CPU δυσλειτουργεί, δεν επηρεάζεται η λειτουργία όλου του συστήματος αλλά μόνο οι διαμερίσεις που περιλαμβάνουν εκείνη την CPU. Εντοπισμός Σφάλματος (fault detection): Σε εφαρμογές όπου απαιτείται μεγάλη αξιοπιστία, είναι δυνατόν να εκτελείται το ίδιο πρόγραμμα με τα ίδια δεδομένα, σε διαφορετικές διαμερίσεις για σκοπούς σύγκρισης των αποτελεσμάτων. Αποσφαλμάτωση (debugging): είναι πιο εύκολη εάν επιτελείται σε διαμερίσεις μικρού μεγέθους=> Ευκολότερη ανάπτυξη προγραμμάτων (π.χ. Debugging σε 5 κόμβους αντί για 1000). Πολλαπλούς ταυτόχρονους χρήστες: Εφόσον έχουμε πολλαπλές ανεξάρτητες διαμερίσεις της παράλληλης μηχανής, είναι δυνατόν να έχουμε πολλαπλούς ταυτόχρονους χρήστες καθένας από τους οποίος μπορεί να τρέχει διαφορετικό παράλληλο πρόγραμμα. 23

Χαρακτηριστικά των Διαμερίσιμων Παράλληλων Συστημάτων (2/2) Αυξημένη χρησιμοποίηση του συστήματος (increased utilization): Εάν π.χ. ένα πρόγραμμα χρειάζεται Ν/4 από τους Ν διαθέσιμους επεξεργαστές, οι υπόλοιποι 3Ν/4 μπορούν να αξιοποιηθούν από άλλα προγράμματα. Χρήση του βέλτιστου αριθμού Επεξεργαστών: Χρησιμοποιώντας περισσότερους επεξεργαστές από τους απαιτούμενους αυξάνεται ο χρόνος εκτέλεσης ενός προγράμματος. Αν επιλεγεί το κατάλληλο μέγεθος υποσυστήματος είναι δυνατόν να ελαχιστοποιηθεί ο χρόνος εκτέλεσης του προγράμματος. 24

Στατικά δίκτυα διασύνδεσης Μπορούν να διακριθούν σε 2 κατηγορίες: Δίκτυα Πλήρους διασύνδεσης (Completely Connected Networks - CCNs). Δίκτυα Περιορισμένης διασύνδεσης (Limited Connection Networks-LCNs). 25

Δίκτυα Πλήρους Διασύνδεσης: Τα πιο ακριβά δίκτυα διασύνδεσης Σε αυτήν την κατηγορία κάθε κόμβος συνδέεται με κάθε έναν από τους υπόλοιπους κόμβους (επικοινωνούν άμεσα όλοι με όλους). Εγγυώνται ταχεία μετάδοση των μηνυμάτων από τον κόμβο αποστολέα στον κόμβο παραλήπτη επειδή το μήνυμα πρέπει να διασχίσει μόνο μια ακμή. Μειονέκτημα: Για Ν κόμβους απαιτούνται Ν(Ν-1)/2 ακμές. Το κόστος είναι απαγορευτικό για μεγάλο Ν. Π.χ. για Ν=6 απαιτούνται 15 σύνδεσμοι. 26

Δίκτυα Πλήρους Διασύνδεσης 27

Δίκτυα περιορισμένης διασύνδεσης (1/2) Σε αυτήν την κατηγορία κάθε κόμβος δε συνδέεται με κάθε έναν από τους υπόλοιπους κόμβους παρά μόνο με κάποιους γειτονικούς. Η μετάδοση των μηνυμάτων από τον κόμβο αποστολέα στον κόμβο παραλήπτη γίνεται δια μέσου άλλων κόμβων του δικτύου διασύνδεσης. Παράδειγμα: γραμμικό δίκτυο (linear network), στο οποίο κάθε κόμβος είναι συνδεδεμένος με 2 άλλους εκτός από τον πρώτο και τον τελευταίο. 28

Γραμμικό Δίκτυο: Το πιο απλό δίκτυο διασύνδεσης Πλεονέκτημα: Απλή κατασκευή (μικρό κόστος). Για την διασύνδεση Ν επεξεργαστών απαιτούνται Ν-1 σύνδεσμοι, με αποτέλεσμα ο χρόνος επικοινωνίας να έχει άμεση σχέση με την μεταξύ τους απόσταση σε όρους αριθμού συνδέσεων (μειονέκτημα για μεγάλα Ν). Με άλλα λόγια: Οι πιο απομακρυσμένοι κόμβοι να επικοινωνούν πιο αργά. 29

Δίκτυα περιορισμένης διασύνδεσης (2/2) Δίκτυο διασύνδεσης σε σχήμα δακτυλίου (ring network-1 D torus): Η αρχιτεκτονική αυτή προκύπτει από το γραμμικό δίκτυο αν συνδεθεί ο πρώτος και ο τελευταίος κόμβος. Κάθε κόμβος έχει 2 γείτονες. Απαιτούνται Ν συνολικά συνδέσεις. 30

Διαιτησία Διαύλου (1/2) Σε περίπτωση που το μέσο είναι κοινό τότε απαιτείται διαιτησία διαύλου, δηλαδή ο καθορισμός ποιος κάθε φορά μπορεί να χρησιμοποιήσει το δίαυλο. Υπάρχουν 6 αλγόριθμοι: Αλγόριθμος αλυσίδας (daisy chain): Στατική Ανάθεση προτεραιοτήτων. Όλοι οι κόμβοι θεωρούνται ότι βρίσκονται σε μια σειρά. Κυκλική αλυσίδα: Όλοι οι κόμβοι θεωρούνται ότι βρίσκονται σε μια κυκλική σειρά. Η προτεραιότητα είναι δυναμική με βάση ενός token που μεταφέρεται από δεξιά προς τα αριστερά (όσο πιο μακριά είναι ένας κόμβος από το token, τόσο χαμηλότερη προτεραιότητα έχει). 31

Διαιτησία Διαύλου (2/2) Αλγόριθμος εκ περιτροπής (round-robin): Παρέχεται με κυκλικό τρόπο, κάθε κόμβος έχει ένα σταθερό κβάντο χρόνου που το χρησιμοποιεί όταν έρθει η σειρά του. Δεν υπάρχει κεντρικός ελεγκτής. Αλγόριθμος περιόδευσης (polling): ένας κεντρικός ελεγκτής ελέγχει διαδοχικά ποιος έχει θέσει το αίτημα για επικοινωνία, και δίνει τον έλεγχο κυκλικά. Αλγόριθμος λιγότερο πρόσφατα χρησιμοποιημένου (LRU): Οι αιτήσεις τοποθετούνται σε μια σειρά από τον ελεγκτή και εξυπηρετούνται με LRU. Αλγόριθμος εξυπηρέτησης κατά σειρά άφιξης (FCFS): Όποιος αιτηθεί πρώτος, παίρνει τον έλεγχο. Ο κεντρικός ελεγκτής διατηρεί μια ουρά με τις αιτήσεις. 32

Δίκτυα περιορισμένης διασύνδεσης (3/2) Δίκτυο πλέγματος δύο διαστάσεων (twodimensional mesh network): Ονομάζεται έτσι λόγο της διάταξης των κόμβων που συνδέονται με τέτοιο τρόπο που σχηματίζουν ένα πλέγμα. Κάθε πλευρά του πλέγματος έχει sqrt(n) κόμβους και διάμετρο 2(sqrt(N)-1). Είναι ελκυστική αρχιτεκτονική από άποψη ηλεκτρικής καλωδίωσης. Χρησιμοποιείται συχνά σε παράλληλες μηχανές. 33

Δίκτυο πλέγματος δύο διαστάσεων Μπορεί να επεκταθεί με σύνδεση κάθε κόμβου του πλέγματος με τον απέναντί του και να σχηματίσει το δισδιάστατο πλέγμα 4 πλησιέστερων γειτόνων (2-D mesh with wraparound link, 2-D torus) Σχήμα Β και (3-D mesh) Σχήμα Γ. 34

Δίκτυα περιορισμένης διασύνδεσης (4/2) Δίκτυο διασύνδεσης σε σχήμα δέντρου (tree Network): Η αρχιτεκτονική δένδρου είναι αυτή στην οποία υπάρχει μόνο ένα μονοπάτι μεταξύ οποιουδήποτε ζεύγους κόμβων, (υποπερίπτωση τα δίκτυα δυαδικού δένδρου binary tree networks). Για να μεταφερθεί ένα μήνυμα από έναν επεξεργαστή ο κόμβος αποστολής στέλνει το μήνυμα προς την ρίζα του δέντρου μέχρι να βρεθεί ένας κόμβος στον οποίο εμπεριέχεται και ο κόμβος προορισμού, τότε το μήνυμα δρομολογείται προς τα κάτω μέχρι να φτάσει στον κόμβο προορισμού. 35

Δίκτυο διασύνδεσης σε σχήμα δένδρου 36

Δίκτυα περιορισμένης διασύνδεσης (5/2) Τα δίκτυα δένδρου πάσχουν από συμφόρηση επικοινωνίας στα υψηλότερα επίπεδα του δένδρου πιο κοντά στην ρίζα (communication bottleneck). Π.χ. όταν οι κόμβοι του χαμηλότερου αριστερού υποδένδρου θέλουν να επικοινωνήσουν με τους κόμβους του χαμηλότερου δεξιού υποδένδρου τότε ο root κόμβος πρέπει να διαχειριστεί όλα τα μηνύματα. Το πρόβλημα αυτό μπορεί να αντιμετωπιστεί στα δυναμικά δίκτυα δένδρου με αύξηση των συνδέσμων επικοινωνίας κοντά στον root κόμβο. Ένα τέτοια δίκτυο ονομάζεται παχύ δένδρο (fat tree). 37

Δίκτυο διασύνδεσης fat tree 38

Δίκτυα περιορισμένης διασύνδεσης (6/2) Τα δίκτυα Υπερκύβου (hypercube networks) ονομάζονται έτσι λόγο της χαρακτηριστικής μορφής κύβου που παίρνουν στον χώρο. Στην τοπολογία αυτή ο αριθμός Ν των κόμβων είναι πάντα δύναμη του 2. Ν=2 n, που αριθμούνται από 0 έως 2 n 1. Το n ονομάζεται τάξη του υπερκύβου (nκύβος ή Υπερκύβος τάξης n). 39

Δίκτυα υπερκύβου ο Υπερκύβος του σχήματος έχει Ν=8 κόμβους Τάξη: 3 (8=23). 40

Δίκτυα περιορισμένης διασύνδεσης (7/2) Σε κάθε n-κύβο κάθε επεξεργαστής συνδέεται με n επεξεργαστές. Κάθε κύβος τάξης n θεωρείται ότι θεωρείται ότι προκύπτει από τον κύβο τάξης n-1. 41

Δίκτυα περιορισμένης διασύνδεσης (8/2) 42

Δυναμικά Δίκτυα Διασύνδεσης: Απλού Διαύλου (1/2) Βασισμένα σε Απλό Δίαυλο (single bus systems). Είναι ο πιο απλός τρόπος για διασύνδεση σε πολυεπεξεργαστικά συστήματα. Στην γενική του μορφή αποτελείται από Ν CPU (Pi) που συνδέονται με έναν και μόνο δίαυλο. Χρησιμοποιείται κρυφή μνήμη για καλύτερη απόδοση και υπάρχει μια κοινή μνήμη. Τυπικά μεγέθη τέτοιων συστημάτων: 2-50 CPU. Πλεονέκτημα: Απλή κατασκευή και επεκτείνεται εύκολα. Μειονέκτημα: για μεγάλα Ν εμφανίζεται bottleneck στον δίαυλο και οι χρόνοι καθυστέρησης είναι ανάλογοι του Ν. 43

Δυναμικά Δίκτυα Διασύνδεσης: Απλού Διαύλου (2/2) 44

Εμπορικά Παραδείγματα Δικτύων Διασύνδεσης 45

Δυναμικά Δίκτυα Διασύνδεσης: Πολλαπλού Διαύλου Βασισμένα σε πολλαπλό δίαυλο (multiple bus systems). Είναι η επέκταση του απλού διαύλου για διασύνδεση σε πολυεπεξεργαστικά συστήματα. Αποτελείται από Ν CPU (Pi) και πολλαπλά αρθρώματα μνήμης που συνδέονται με πολλαπλούς διαύλους. Υπάρχουν 4 υποκατηγορίες ανάλογα με τον τρόπο διασύνδεσης της μνήμης: Κοινό Χαρακτηριστικό: Όλοι οι επεξεργαστές Pi (π.χ. i=1-6, επόμενη διαφάνεια) συνδέονται με όλους τους διαύλους. Μειονέκτημα: Αυξανομένου του αριθμού των αρθρωμάτων μνήμης και επεξεργαστών αυξάνει ο ανταγωνισμός επικοινωνίας έσω των διαύλων. 46

Οι 4 υποκατηγορίες αναλόγως του τρόπου διασύνδεσης μνήμης multiple bus with full bus memory connection (MBFBMC). multiple bus with single bus memory connection (MBSBMC). multiple bus with partial bus memory connection (MBPBMC). multiple bus with class-based memory connection (MBCBMC). 47

multiple bus with full bus memory connection (MBFBMC) Χαρακτηριστικό: Όλα τα αρθρώματα μνήμης συνδέονται με όλους τους διαύλους. 48

multiple bus with single bus memory connection (MBSBMC) Χαρακτηριστικό: Κάθε άρθρωμα μνήμης συνδέεται με έναν συγκεκριμένο δίαυλο. 49

multiple bus with partial bus memory connection (MBPBMC) Χαρακτηριστικό: Κάθε άρθρωμα μνήμης συνδέεται με ένα υποσύνολο διαύλων. 50

multiple bus with class-based memory connection (MBCBMC) Χαρακτηριστικό: Τα αρθρώματα μνήμης ομαδοποιούνται και κάθε ομάδα συνδέεται με ένα συγκεκριμένο υποσύνολο διαύλων. 51

Δυναμικά δίκτυα διασύνδεσης (1/10) Δίκτυα διασύνδεσης Βασισμένα σε διακόπτη (switch based interconnection networks). Μεταγωγέα διασταύρωσης (crossbar switch). Αποτελεί το άλλο άκρο σε σχέση με την περιορισμένου δικτύου απλού διαύλου, γιατί μπορεί να παρέχει ταυτόχρονες συνδέσεις μεταξύ όλων των εισόδων και όλων των εξόδων. Χαρακτηριστικά: περιέχει ένα στοιχείο διακόπτη (Switching Element-SE) στην διασταύρωση μεταξύ 2 οποιονδήποτε οριζόντιων και κάθετων γραμμών. Αυτό μπορεί να έχει 2 πιθανές ρυθμίσεις: ευθεία ή διαγώνια. Το σημείο διασταύρωσης ονομάζεται cross-point. 52

Δυναμικά δίκτυα διασύνδεσης (2/10) Παράδειγμα 8 x 8 crossbar network. Υπάρχουν συνολικά 64 σημεία διασταύρωσης. Φαίνεται η ταυτόχρονη σύνδεση μεταξύ των Pi και των M8-i+1 για 1 i 8. 53

Δυναμικά δίκτυα διασύνδεσης (3/10) Γενικά σε ένα Ν x N crossbar network η πολυπλοκότητά του network αυξάνει με την αύξηση του Ν. Αυτό όμως αναπληρώνεται από τους γρήγορους χρόνους επικοινωνίας. Για μεγάλα Ν το κόστος και η πολυπλοκότητα κατασκευής το καθιστούν απαγορευτικό. 54

Δυναμικά δίκτυα διασύνδεσης (4/10) Δίκτυα διασύνδεσης Βασισμένα σε διακόπτη (switch based interconnection networks). Δίκτυα Απλού Σταδίου (single stage networks). Στην κατηγορία αυτή υπάρχει μόνο 1 Στοιχείο Διακόπτη (SE) μεταξύ 2 επεξεργαστών που επιτρέπει την μεταξύ τους επικοινωνία. Straight: ευθεία μετάδοση. Exchange: γίνεται ανταλλαγή των εξόδων. Upper-broadcast: και στις 2 εξόδους μεταδίδεται η πάνω είσοδος. Lower-broadcast: και στις 2 εξόδους μεταδίδεται η κάτω είσοδος. Μειονέκτημα: δεν συνδέει όλους τους κόμβους άμεσα. Παράδειγμα Switching Element: 55

Δίκτυα Απλού Σταδίου (single stage networks) Οι επεξεργαστές είναι άμεσα συνδεδεμένοι με τους μεταγωγείς δικτύου και συνεπώς, κάθε κόμβος του γράφου, αντιστοιχεί στο συνδυασμό ενός επεξεργαστή και ενός μεταγωγέα. Κάθε μήνυμα κατευθύνεται από ένα κόμβοεπεξεργαστή/μεταγωγέα σε έναν άλλο κόμβοεπεξεργαστή/μεταγωγέα μέσω ενός και μοναδικού σταδίου. 56

Δυναμικά δίκτυα διασύνδεσης (5/10) Δίκτυα Απλού Σταδίου (single stage networks). 57

Δυναμικά δίκτυα διασύνδεσης (6/10) Δίκτυα Πολλαπλού Σταδίου (multiple stage networks). Παράδειγμα: Omega Network. Ονομάζονται έτσι επειδή περιλαμβάνουν περισσότερα από 1 ενδιάμεσα στάδια από διακόπτες. Με αυτόν τον τρόπο όλοι οι επεξεργαστές επικοινωνούν σε μικρότερο χρόνο με ένα ανεκτό κόστος κατασκευής. Κάθε μήνυμα κατευθύνεται από έναν κόμβο-επεξεργαστή μέσω περισσοτέρων του ενός σταδίων (συνήθως log2n). Μειονέκτημα: Δεν υπάρχει εναλλακτική οδός επικοινωνίας εάν κάποιος διακόπτης υπολειτουργεί => περιορισμένη ανοχή σε σφάλματα υλικού (fault tolerance). Λύση: προσθήκη επιπλέον σταδίων. 58

Δυναμικά δίκτυα διασύνδεσης (7/10) 59

Δυναμικά δίκτυα διασύνδεσης (8/10) Επιπλέον Μειονέκτημα: Υπάρχει περίπτωση λόγο η ύπαρξης άλλου μονοπατιού να μπλοκαριστεί μια επικοινωνία, οπότε τότε μιλάμε για αδυναμία επικοινωνίας και το δίκτυο είναι μπλοκαρισμένο (Blocking Network). Λύση: Κατασκευή Δικτύων Αναδιευθέτησης (Rearrangable Networks) ==> Παράδειγμα: Δίκτυο Benes. Έχουν την ιδιότητα να αναδιευθετούν μια σύνδεση, εάν αυτό είναι απαραίτητο, ώστε να αφήνει διαθέσιμο μονοπάτι για την πραγματοποίηση μιας άλλη σύνδεσης που διαφορετικά δεν θα ήταν εφικτή. Μη Παρεμποδιστικά Δίκτυα (Nonblocking Networks): Έχουν την ιδιότητα ότι με δεδομένη μια σύνδεση μεταξύ οποιονδήποτε επεξεργαστών, να είναι πάντα εφικτή η διασύνδεση μεταξύ οποιουδήποτε άλλου ζεύγους επεξεργαστών. ==> Παράδειγμα: Δίκτυο Clos. 60

Blocking in Omega (1/8) 61

Blocking in Omega (2/8) 62

Blocking in Omega (3/8) 63

Blocking in Omega (4/8) 64

Blocking in Omega (5/8) 65

Blocking in Omega (6/8) 66

Blocking in Omega (7/8) 67

Blocking in Omega (8/8) 68

Δυναμικά δίκτυα διασύνδεσης (9/10) Δίκτυα Αναδιευθέτησης (Rearrangable Networks). Παράδειγμα: Δίκτυο Benes. 69

Δυναμικά δίκτυα διασύνδεσης (10/10) Παράδειγμα Μη Παρεμποδιστικού Δικτύου: Δίκτυο Clos. 70

Αξιολόγηση Δικτύων διασύνδεσης Υπάρχει μεγάλη ποικιλία δικτύων διασύνδεσης! Πως αξιολογούμε και πως επιλέγουμε το κατάλληλο δίκτυο διασύνδεσης για ένα παράλληλο υπολογιστικό σύστημα; 71

Κατά τον σχεδιασμό πρέπει να λαμβάνονται υπόψιν οι εξής παράμετροι: (1/2) 1. Κόστος Υλοποίησης. 2. Διάμετρος δικτύου (μήκος μέγιστης διαδρομής). 3. Δυνατότητα διαμέρισης σε ανεξάρτητα υποδίκτυα. 4. Μέση απόσταση μεταξύ των κόμβων. 5. Αριθμός ακμών που πρόσκεινται σε κάθε κόμβο του δικτύου. 6. Ευκολία χρήσης του δικτύου. 7. Αποδοτικότητα. 72

Κατά τον σχεδιασμό πρέπει να λαμβάνονται υπόψιν οι εξής παράμετροι: (2/2) 8. Ευκολία υλοποίησης αλγορίθμων δρομολόγησης. 9. Εύρος ζώνης διχοτόμησης (διαιρούμε τους κόμβους σε δυο ομάδες, μετρούμε το εύρος ζώνης των γραμμών που συνδέουν τις ομάδες, και παίρνουμε το μικρότερο εύρος ζώνης για κάθε πιθανή διαίρεση). 10. Πλήθος γραμμών. 11. Χρόνος μετάδοσης μηνύματος από όλους προς όλους. 12. Χρόνος μετάδοσης μηνύματος στους τέσσερις γείτονες. 73

Παράδειγμα εύρους ζώνης διχοτόμησης Από: «Προγραμματισμός και Αρχιτεκτονική Συστημάτων Παράλληλης Επεξεργασίας», Παπαδάκης, Διαμαντάρας. 74

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

Ποια είναι τα πιο σημαντικά όμως κριτήρια; Για παράδειγμα, αν και η διάμετρος της τοπολογίας του δικτύου twisted-cube είναι ίση με το μισό της διαμέτρου του υπερκύβου, ο υπερκύβος έχει μικρότερη καθυστέρηση στην δρομολόγηση μηνυμάτων. Τελικά ποιο είναι καλύτερο; 76

Και τα προβλήματα αξιολόγησης συνεχίζονται... (1/2) Αν έχουμε καθορίσει τα κριτήρια αξιολόγησης, πως επιλέγουμε δεδομένα (data) για να συγκρίνουμε τα δίκτυα διασύνδεσης; Συνήθως επιλέγουμε προγράμματα δοκιμών επιδόσεων (benchmarks). Όμως, μπορεί να μην είναι αντιπροσωπευτικά αφού μπορεί να υπάρχει overhead στο χρόνο εκτέλεσης λόγω μη βέλτιστης μετάφρασης. Συνήθως τροποποιούμε μόνο μια παράμετρο στο ΔΔ και κρατάμε τις άλλες σταθερές και κάνουμε πλήθος μετρήσεων...όμως... 77

Και τα προβλήματα αξιολόγησης συνεχίζονται... (2/2) Πως επιλέγονται οι παράμετροι που κρατάμε σταθερές; Πως επιλέγονται οι σταθερές τιμές; Τι είδους μετρήσεις παίρνουμε; Πως ερμηνεύουμε και αξιολογούμε τις μετρήσεις; Υπάρχει έντονο ερευνητικό ενδιαφέρον! 78

Εμπορικά Παραδείγματα Δικτύων Διασύνδεσης Παράλληλων Υπολογιστών Paragon: 2D mesh (1992). BlueGene/L (IBM): 3D Torus + Tree. BlueGene/W (IBM): 3D Torus + Tree. BlueGene/W (IBM): 3D Torus + Tree. Earth Simulator (NEC): Crossbar. NYU: Omega Network 4096 cpu x 4096 memory modules. 79

Paragon: 2D mesh (1/2) Massively Parallel with Intel's 32-bit 80860 RISC chip, performing at 60 MFLOPS peak, MIMD hypercube. Machine type: RISC-based distributed-memory multi-processor. Models: Paragon XP/S, XP/E. Operating systems: OSF/1, SUNMOS. Connection structure: 2-D mesh (torus). Compilers: Fortran 77, ADA. 80

Paragon: 2D mesh (2/2) 81

Earth Simulator: Crossbar 82

Earth Simulator Configuration 83

Επικοινωνία σε συστήματα διαμοιραζόμενης μνήμης 84

Συστήματα διαμοιραζόμενης μνήμης (1/2) Όλοι οι επεξεργαστές μοιράζονται μια συνολική ποσότητα μνήμης (Symmetric Multiprocessors systems - SMP). Η επικοινωνία μεταξύ των εργασιών γίνεται μέσω εγγραφής και ανάγνωσης στην κοινόχρηστη μνήμη ανάγνωσης στην κοινόχρηστη μνήμη. ==> Οι επεξεργαστές δεν επικοινωνούν μεταξύ τους άμεσα. 85

Συστήματα διαμοιραζόμενης μνήμης (2/2) Ένας τέτοιος υπολογιστής αποτελείται από ένα σύνολο ανεξάρτητων επεξεργαστών, ένα σύνολο από αρθρώματα μνήμης και ένα δίκτυο ενδοεπικοινωνίας (Interconnection Network, IN). Το δίκτυο αυτό μπορεί να είναι τόσο απλό όσο ένας δίαυλος μέχρι πιο πολύπλοκες δομές, όπως δίκτυα πολλαπλών επιπέδων, όπου η διαδρομή από έναν επεξεργαστή προς μια μνήμη περνά από αρκετά επίπεδα διακοπτών. 86

Συστήματα διαμοιραζόμενης μνήμης 87

Συστήματα διαμοιραζόμενης μνήμης (δίαυλος) 88

Συστήματα διαμοιραζόμενης μνήμης (διακόπτης crossbar) 89

Συστήματα διαμοιραζόμενης μνήμης (διακόπτης πολλαπλών επιπέδων) 90

Συστήματα διαμοιραζόμενης μνήμης (πολλαπλές διαδρομές) 91

Βασικά Στοιχεία Όλοι οι επεξεργαστές βλέπουν την ίδια μνήμη και με τον ίδιο τρόπο. Η επικοινωνία μεταξύ των επεξεργαστών γίνεται μέσω της τροποποίησης κοινών μεταβλητών στη μνήμη. Το δίκτυο διασύνδεσης είναι ένας συμβιβασμός μεταξύ ταχύτητας και κόστους. Όμως, κάθε φορά ένα ζευγάρι μπορεί να κατέχει την ηλεκτρική σύνδεση. Αν ένα άλλο ζευγάρι απαιτήσει κάποια σύνδεση θα πρέπει να περιμένει. ==> Δημιουργούνται συνωστισμοί. 92

Αν χρησιμοποιηθεί κρυφή μνήμη τι πρόβλημα θα προκύψει; 93

Κατηγοριοποίηση των MIMD Τα υπολογιστικά συστήματα αρχιτεκτονικής MIMD διαιρούνται σε 2 ομάδες: Shared Memory (MIMD) (SM-MIMD) όπου όλοι οι επεξεργαστές έχουν πρόσβαση σε μια συνολική κοινόχρηστη μνήμη (Συστήματα διαμοιραζόμενης μνήμης). Distributed Memory (MIMD) (DM-MIMD) όπου κάθε επεξεργαστής έχει πρόσβαση στη δική του τοπική μνήμη (Συστήματα κατανεμημένης μνήμης). 94

Συστήματα μοιραζόμενης μνήμης με δίαυλο Προβλήματα που προκύπτουν: Όλοι οι επεξεργαστές μοιράζονται το bandwidth του διαύλου => Μειωμένη απόδοση. Φαινόμενο του ανταγωνισμού μνήμης (memory contention). Αντιμετωπίζεται με χρήση κρυφής μνήμης (cache memory) σε κάθε CPU. Εμφανίζεται πρόβλημα συνάφειας (coherence problem). 95

Συστήματα μοιραζόμενης μνήμης με μεταγωγέα διασταύρωσης Απευθείας σύνδεση κάθε επεξεργαστή με κάθε διαθέσιμο άρθρωμα μνήμης. Όσο αυξάνεται το πλήθος των CPU και RAM=> Αυξημένη πολυπλοκότητα κατασκευής=> Μεγάλοι χρόνοι επικοινωνίας. Απαντώνται σε υπολογιστές υψηλής απόδοσης. 96

Διαπλεγματικός μεταγωγέας και Δίκτυο Ωμέγα Μειονεκτήματα Διαπλεγματικού Μεταγωγέα: Για n CPU, m RAM απαιτούνται n*m μεταγωγείς διασταύρωσης. Λύση; Δίκτυα Ωμέγα (πολλά ενδιάμεσα στάδια μεταγωγής)=> Καθυστέρηση=> Αντιμετωπίζεται με αύξηση του κόστους. 97

Προβλήματα στα Συστήματα μοιραζόμενης μνήμης Η μειωμένη αύξηση της απόδοσης που προκαλείται με την αύξηση του αριθμού των CPUs, οφείλεται στο φαινόμενο του ανταγωνισμού για πρόσβαση στην κοινή μνήμη. Εμφανίζονται προβλήματα συνοχής των δεδομένων στις κρυφές Μνήμες του Συστήματος. 98

Κατηγοριοποίηση των συστημάτων μοιραζόμενης μνήμης Uniform Memory Access (UMA) Ομοιόμορφη προσπέλαση μνήμης. NonUniform Memory Access (NUMA) Μη ομοιόμορφη προσπέλαση μνήμης. Cache-Only Memory Architecture (COMA). 99

Βιβλιογραφία Χρησιμοποιήθηκε υλικό από: Από: Προγραμματισμός και Αρχιτεκτονική Συστημάτων Παράλληλης Επεξεργασίας, Παπαδάκης, Διαμαντάρας, Κλειδάριθμος, 2012. 100

Τέλος Ενότητας 101

Σημείωμα Αναφοράς Copyright, Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών, Μηνάς Δασυγένης. «Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας». Έκδοση: 1.0. Κοζάνη 2015. Διαθέσιμο από τη δικτυακή διεύθυνση: https://eclass.uowm.gr/courses/icte268/ 102

Σημείωμα Αδειοδότησης Το παρόν υλικό διατίθεται με τους όρους της άδειας χρήσης Creative Commons Αναφορά, Όχι Παράγωγα Έργα Μη Εμπορική Χρήση 4.0 [1] ή μεταγενέστερη, Διεθνής Έκδοση. Εξαιρούνται τα αυτοτελή έργα τρίτων π.χ. φωτογραφίες, διαγράμματα κ.λ.π., τα οποία εμπεριέχονται σε αυτό και τα οποία αναφέρονται μαζί με τους όρους χρήσης τους στο «Σημείωμα Χρήσης Έργων Τρίτων». [1] h t t p ://creativecommons.org/licenses/by-nc-nd/4.0/ Ως Μη Εμπορική ορίζεται η χρήση: που δεν περιλαμβάνει άμεσο ή έμμεσο οικονομικό όφελος από την χρήση του έργου για το διανομέα του έργου και αδειοδόχο που δεν περιλαμβάνει οικονομική συναλλαγή ως προϋπόθεση για τη χρήση ή πρόσβαση στο έργο που δεν προσπορίζει στο διανομέα του έργου και αδειοδόχο έμμεσο οικονομικό 103

Διατήρηση Σημειωμάτων Οποιαδήποτε αναπαραγωγή ή διασκευή του υλικού θα πρέπει να συμπεριλαμβάνει: το Σημείωμα Αναφοράς το Σημείωμα Αδειοδότησης τη δήλωση Διατήρησης Σημειωμάτων το Σημείωμα Χρήσης Έργων Τρίτων (εφόσον υπάρχει) μαζί με τους συνοδευόμενους υπερσυνδέσμους. 104