Παράλληλα και κατανεμημένα συστήματα: Διαφορά μεταξύ των αναθεωρήσεων

Περιεχόμενο που διαγράφηκε Περιεχόμενο που προστέθηκε
JohnMad (συζήτηση | συνεισφορές)
JohnMad (συζήτηση | συνεισφορές)
μΧωρίς σύνοψη επεξεργασίας
Γραμμή 5:
Με την καθιέρωση υπολογιστών με πολλαπλούς επεξεργαστές, όπου οι διεργασίες μπορούσαν να εκτελούνται πραγματικά παράλληλα και όχι ψευδοπαράλληλα, προέκυψαν νέα ζητήματα υλικού με αποτέλεσμα να αναδυθεί η ''παράλληλη επεξεργασία'', ένα επιστημονικό πεδίο το οποίο μελετά, τόσο από πλευράς υλικού όσο και λογισμικού, μόνο υπολογιστικά συστήματα με πολλαπλές επεξεργαστικές μονάδες. Τα συστήματα αυτά μπορούν να εκτελούν ορισμένες, κατάλληλα σχεδιασμένες εφαρμογές (συνήθως [[επιστήμη|επιστημονικού]] σκοπού, π.χ. [[προσομοίωση|προσομοιώσεις]]) ταχύτερα απ' ότι οι συνηθισμένοι ''σειριακοί'' υπολογιστές [[αρχιτεκτονική φον Νόιμαν|αρχιτεκτονικής Φον Νόιμαν]]. Την ίδια περίοδο όμως εξελίσσονταν και τα [[Δίκτυο υπολογιστών|δίκτυα υπολογιστών]] με αποτέλεσμα, καθώς η δικτύωση άρχισε να είναι πανταχού παρούσα προς τα τέλη της [[Δεκαετία 1970|δεκαετίας του 1970]], να εμφανιστούν δικτυακά προγράμματα που όχι μόνο αλληλεπιδρούσαν μεταξύ τους μέσω της υποκείμενης δικτυακής υποδομής αλλά εκτελούσαν από κοινού υπολογισμούς με διαφανή για τον χρήστη τρόπο, διασπώντας τους σε τμήματα και κατανέμοντάς τους μεταξύ τους, ενώ στο εξωτερικό περιβάλλον εμφανίζονταν ως ένα μοναδικό σύστημα. Καθώς αυτός ήταν ένας τύπος παραλληλισμού εμφανίστηκε ο όρος ''κατανεμημένη επεξεργασία'' για να τον περιγράψει.
 
Η κατανεμημένη επεξεργασία αποτελεί ένα υποσύνολο της παράλληλης επεξεργασίας, στο οποίο όλες οι [[CPU]] έχουν ιδιωτικές, τοπικές [[μνήμη υπολογιστή|μνήμες]] με ξεχωριστούς [[χώρος διευθύνσεων|χώρους διευθύνσεων]] (είναι δηλαδή ανεξάρτητοι, δικτυωμένοι υπολογιστές) και παρέχουν στον χρήστη την ψευδαίσθηση του ενιαίου, μοναδικού συστήματος. Ο όρος «κατανεμημένο σύστημα» αναφέρεται τόσο στο υλικό (επεξεργαστές, μνήμες, δίκτυο) όσο και στο λογισμικό (λειτουργικό σύστημα, εφαρμογές) που είναι απαραίτητα για να υλοποιηθούν η κατανομή και αυτή η ψευδαίσθηση, με έμφαση όμως στο λογισμικό. Στα κατανεμημένα συστήματα, σε αντίθεση με τα παράλληλα, η εικόνα συνεκτικότητας των γεωγραφικά διεσπαρμένων [[πόρος (υπολογιστές)|πόρων]] είναι συνήθως σπουδαιότερος στόχος από την αύξηση των υπολογιστικών επιδόσεων που επιτυγχάνεται με τον παραλληλισμό. Δεν είναι σπάνιο μάλιστα να μη συμμετέχουν καν οι κόμβοι σε κάποιον από κοινού υπολογισμό αλλά να εκτελούν διαφορετικές επιμέρους εργασίες, παρουσιαζόμενοι όμως στο εξωτερικό περιβάλλον (π.χ. σε πελάτες οι οποίοι ζητούν υπηρεσίες) ως ενιαίο σύστημα. Αυτά ονομάζονται ''μη συνεκτικά κατανεμημένα συστήματα'' (π.χ. ο [[Παγκόσμιος Ιστός]] ή οι [[Peer-to-peer|ομότιμες εφαρμογές ανταλλαγής αρχείων]] μέσω [[Διαδίκτυο|Διαδικτύου]]), σε αντίθεση με τα ''συνεκτικά κατανεμημένα συστήματα'', τα οποία αξιοποιούνται περισσότερο ως συνήθη παράλληλα συστήματα για τη μεγιστοποίηση των υπολογιστικών επιδόσεων.
 
== Επισκόπηση ==
Γραμμή 34:
* Συνηθισμένο δίκτυο υπολογιστών ([[LAN]] ή και [[WAN]], όπως το [[Internet]]). Εδώ συνήθως υπάγονται ανοιχτής αρχιτεκτονικής, ετερογενείς πολυυπολογιστές που προκύπτουν από τη δικτύωση αυτόνομων, συνηθισμένων υπολογιστών («'''υπολογιστικές συστάδες'''», clusters). Η λύση αυτή είναι χαμηλότερου κόστους, χαμηλότερων επιδόσεων και πολύ δημοφιλής, ενώ τα δίκτυα διασύνδεσης που συνήθως αξιοποιεί είναι συνηθισμένα και εύκολα προσπελάσιμα (π.χ. [[Ethernet]] LAN, [[Intranet]], ή ακόμη και το Internet). Οι συστάδες με δίκτυο διασύνδεσης το Internet έχει επικρατήσει να ονομάζονται '''υπολογιστικά πλέγματα''' (computer grid) και υλοποιούνται κυρίως με εξειδικευμένο καταναμεμημένο λογισμικό το οποίο εκτελείται σε συνηθισμένους δικτυωμένους ηλεκτρονικούς υπολογιστές.
 
Σε κάθε περίπτωση, από τη στιγμή που το λογισμικό εξασφαλίζει για τους χρήστες συνεκτική εικόνα των πόρων του πολυυπολογιστή και την ψευδαίσθηση ενός μοναδικού συστήματος, έστω και στο πλαίσιο μίας μόνο εφαρμογής, κάνουμε λόγο για κατανεμημένο σύστημα.
 
Στους εξειδικευμένους πολυυπολογιστές υψηλής απόδοσης κάθε κόμβος επικοινωνεί με το δίκτυο διασύνδεσης μέσω ενός [[δρομολογητής|δρομολογητή]], ενός μικρού κυκλώματος μεταγωγής με το οποίο δρομολογούνται πακέτα δεδομένων (μηνύματα) από έναν κόμβο σε έναν άλλον (πιθανώς διερχόμενα από ενδιάμεσους σταθμούς σε περίπτωση δικτύου μεταγωγής). Το ίδιο το δίκτυο μπορεί να έχει διάφορες τοπολογίες (δίαυλος, πλέγμα, υπερκύβος κλπ) ενώ η μορφή των μηνυμάτων καθορίζεται από εξειδικευμένα [[πρωτόκολλο επικοινωνίας|πρωτόκολλα]] (ανάλογα με τον κατασκευαστή). Ένας τέτοιος πολυυπολογιστής μοιάζει πολύ με ένα ιδιότυπο τοπικό δίκτυο υπολογιστών, στο οποίο η τοπολογία είναι αυστηρά στατική, οι αποστάσεις πολύ μικρές και η ανάγκη για ταχύτητα εξαιρετικά αυξημένη. Ως εκ τούτου οι δρομολογητές, οι οποίοι παίζουν ταυτόχρονα τον ρόλο των [[κάρτα δικτύου|καρτών δικτύου]] ενός συνήθους LAN και των δρομολογητών ενός WAN, έχουν όλη τη λειτουργικότητά τους τυπωμένη σε κυκλώματα υλικού ώστε να ελαχιστοποιούνται οι καθυστερήσεις, ενώ οι αλγόριθμοι δρομολόγησης που υλοποιούν είναι εξαιρετικά απλοί και ταχείς.