Τύποι παράλληλης επεξεργασίας πληροφοριών.

Πρόγραμμα Kerish Doctor. 15.07.2019
Επισκόπηση προγράμματος Η έκδοση υπολογιστή του Microsoft Excel Viewer θα επιτρέψει...

Chercher Το έργο προστέθηκε στον ιστότοπο του ιστότοπου: 2016-06-20

"> Διάλεξη

"> Παραλληλισμός είναι η δυνατότητα ταυτόχρονης εκτέλεσης πολλών αριθμητικών, λογικών ή υπηρεσιακών πράξεων. Επιπλέον, οι πράξεις μπορεί να είναι τόσο μεγάλου μπλοκ όσο και μικρού μπλοκ.

Η παράλληλη επεξεργασία μπορεί να βασίζεται σε διάφορες αρχές:

Χωρικός παραλληλισμός;

Χρονικός παραλληλισμός:

  1. Σωληνώσεις.
  2. ">Διανυσματοποίηση.
  3. ">Matrix.
  4. ">Συστολική.
  5. ">Οργάνωση της δομής επεξεργασίας ροής δεδομένων.
  6. ">Οργάνωση του συστήματος με βάση τη δομή του υπερκύβου.
  7. «>Δυναμική αναδιάρθρωση της δομής του αεροσκάφους.

">Η περιγραφή οποιουδήποτε αλγορίθμου είναι ιεραρχική, με βάση την ιδιότητα ένθεσης. Κατά τον προγραμματισμό, τα επίπεδα ένθεσης διακρίνονται: εργασίες, εργασίες, υποεργασίες (διεργασίες), μακροπράξεις, λειτουργίες.

">1. Διαβαθμισμένη-παράλληλη μορφή του αλγορίθμου

">Η πιο γενική μορφή αναπαράστασης αλγορίθμων είναι το γράφημα πληροφοριών-ελέγχου του αλγορίθμου. Μια πιο συγκεκριμένη μορφή αναπαράστασης του παραλληλισμού εργασιών είναι η συσκευή παράλληλης μορφής επιπέδου (LPF).

">Ο αλγόριθμος σε παράλληλη βαθμίδα αναπαρίσταται με τη μορφή βαθμίδων και η μηδενική βαθμίδα περιλαμβάνει τελεστές (κλαδιά) που είναι ανεξάρτητοι μεταξύ τους.

">Στο γράφημα μπορείτε να ορίσετε μεταβάσεις, που σημαίνει τη μεταφορά των αποτελεσμάτων του υπολογισμού μιας πρωτόγονης πράξης από τη μια βαθμίδα σε μια πράξη από την επόμενη βαθμίδα. Τα επίπεδα διαιρούνται με μεταβάσεις. Μπορεί να υπάρχουν "κενές" μεταβάσεις και "κενές" πρωτόγονες επιχειρήσεις.

">Κατά την κατασκευή των NFP, βασίζονται σε ένα βασικό σύνολο αρχέγονων πράξεων (BNO). Η παράλληλη βαθμίδα χαρακτηρίζεται από τις ακόλουθες παραμέτρους:

">1. Μήκος του γραφήματος (αριθμός επιπέδων)" xml:lang="en-US" lang="en-US">L">.

">2. Πλάτος " xml:lang="en-US" lang="en-US">i"> η βαθμίδα - " xml:lang="en-US" lang="en-US">β;vertical-align:sub" xml:lang="en-US" lang="en-US">i">.

">3. Πλάτος παραλληλόγραμμου γραφήματος" xml:lang="en-US" lang="en-US">Β">= " xml:lang="en-US" lang="en-US">μέγ">(" xml:lang="en-US" lang="en-US">β;vertical-align:sub" xml:lang="en-US" lang="en-US">i">).

">4. Μέσο πλάτος του γραφήματος NAP V;vertical-align:sub">cf "> ">.

">5. Συντελεστής πλήρωσης" xml:lang="en-US" lang="en-US">i"> η βαθμίδα " xml:lang="en-US" lang="en-US">k;vertical-align:sub" xml:lang="en-US" lang="en-US">i"> – ">.

">6. Συντελεστής διασποράς πράξεων στο γράφημα -" xml:lang="en-US" lang="en-US">Ε;vertical-align:super" xml:lang="en-US" lang="en-US">j;vertical-align:sub" xml:lang="en-US" lang="en-US">i"> – ">, " xml:lang="en-US" lang="en-US">j">BNO, όπου ">- ποσότητα " xml:lang="en-US" lang="en-US">j">ο τύπος λειτουργιών σε" xml:lang="en-US" lang="en-US">i"> η βαθμίδα.

">7. Ο ελάχιστος απαιτούμενος αριθμός υπολογιστών (από το BNO) για την υλοποίηση του αλγόριθμου που αντιπροσωπεύεται από αυτό το γράφημα στο YAPF.

">8. Ελάχιστος χρόνος λύσης του αλγορίθμου (άθροισμα χρόνων απόκρισης υπολογιστών με το μέγιστο ποσό υπολογισμών για κάθε βαθμίδα) T;vertical-align:sub" xml:lang="en-US" lang="en-US">λεπτά">.

">9. Συνδεσιμότητα του αλγορίθμου (ο αριθμός των ενδιάμεσων αποτελεσμάτων που πρέπει να αποθηκευτούν κατά την υλοποίηση του αλγορίθμου) Γ.

">2. Αυτόματος εντοπισμός συγχρονισμού

">Υπάρχουν δύο πιθανοί τρόποι κατασκευής ενός παράλληλου αλγόριθμου: απευθείας από τη δήλωση προβλήματος ή μετασχηματίζοντας έναν διαδοχικό αλγόριθμο.

">Οι μέθοδοι για την κατασκευή ενός παράλληλου αλγόριθμου από έναν διαδοχικό βασίζονται στον εντοπισμό τυπικών, συχνά εμφανιζόμενων κατασκευών στον διαδοχικό αλγόριθμο, οι οποίες, σύμφωνα με ορισμένους κανόνες, αντικαθίστανται από παράλληλες.

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

">Σε ένα διαδοχικό πρόγραμμα, γίνεται διάκριση μεταξύ ρητής και κρυφής παράλληλης επεξεργασίας.

">Κατά την ανάλυση ενός προγράμματος, δημιουργείται ένα γράφημα ροής δεδομένων. Για τον εντοπισμό προφανούς παραλληλισμού των διαδικασιών, αναλύονται σύνολα μεταβλητών εισόδου (ανάγνωσης)" xml:lang="en-US" lang="en-US">R"> και εξόδου (γραπτές) μεταβλητές" xml:lang="en-US" lang="en-US">W"> κάθε διαδικασίας.

">Η κρυφή παράλληλη επεξεργασία απαιτεί κάποιο είδος διαδικασίας μετασχηματισμού για ένα διαδοχικό πρόγραμμα ώστε να είναι δυνατή η παράλληλη εκτέλεσή του. Ο μετασχηματισμός θα μπορούσε να είναι ο εξής:

">α) μείωση του ύψους των δέντρων των αριθμητικών παραστάσεων (Εικ. 6.3).

">β) μετασχηματισμός γραμμικών σχέσεων υποτροπής.

">γ) αντικατάσταση φορέων εκμετάλλευσης.

">δ) μετατροπή μπλοκ μεταβάσεων υπό όρους και βρόχων σε κανονική μορφή.

">ε) κατανομή των κύκλων.

">Οι παράλληλες αρχιτεκτονικές επιτυγχάνουν υψηλή απόδοση εάν η μετατροπή παραλληλισμού λαμβάνει υπόψη τα χαρακτηριστικά της αρχιτεκτονικής του υπολογιστή στην οποία υποτίθεται ότι θα εκτελεστεί ο αλγόριθμος.

"> Ως παράδειγμα λαμβάνοντας υπόψη τη διάταξη της μνήμης, ας πάρουμε τη μνήμη με διαγώνια διευθυνσιοδότηση. Για να διασφαλιστεί η παράλληλη επεξεργασία των πινάκων, τα στοιχεία των σειρών και των στηλών τους πρέπει να κατανέμονται μεταξύ των συσκευών αποθήκευσης του επεξεργαστή με τέτοιο τρόπο ώστε να μπορούν να ανάγνωση και επεξεργασία ταυτόχρονα Σε αυτή την περίπτωση, ο πίνακας αποθηκεύεται με μετατόπιση (Εικ. 6.4).

">Οποιοσδήποτε αλγόριθμος περιέχει διαδοχικές (βαθμωτές) ενότητες. Έχει αποδειχθεί ότι το μήκος αυτών των βαθμωτών τμημάτων είναι ο καθοριστικός παράγοντας κατά την εφαρμογή του αλγορίθμου σε παράλληλο υπολογιστή.

«>3. Βαθμός και επίπεδα παραλληλισμού

«>Βαθμός παραλληλισμού"> (" xml:lang="en-US" lang="en-US">Δ">) "> αυτή είναι η σειρά του αριθμού των συσκευών παράλληλης εργασίας στο σύστημα κατά την εφαρμογή του αλγόριθμου εργασιών, υπό την προϋπόθεση ότι ο αριθμός των επεξεργαστών (συσκευών επεξεργασίας) δεν είναι περιορισμένος.

">1) Χαμηλός βαθμός: από 2 έως 10 επεξεργαστές.

">2) Μεσαίου βαθμού: από 10 έως 100 επεξεργαστές.

">3) Υψηλός βαθμός: από 100 έως 10;vertical-align:super">4 "> επεξεργαστές.

">4) Εξαιρετικά υψηλός βαθμός: από 10;vertical-align:super">4 "> έως 10 ;vertical-align:super">6 "> επεξεργαστές.

">Γραφική αναπαράσταση της παραμέτρου" xml:lang="en-US" lang="en-US">Δ">(" xml:lang="en-US" lang="en-US">t">) ως συνάρτηση του χρόνου ονομάζεται προφίλ παραλληλισμού προγράμματος. Το σχήμα 6.5 δείχνει ένα τυπικό προφίλ παραλληλισμού.

"> Υπάρχει ένα ευρύ φάσμα πιθανών παραλληλισμών στα προγράμματα εφαρμογών. Σε υπολογιστικά εντατικά προγράμματα, 500 έως 3500 αριθμητικές πράξεις μπορούν να εκτελεστούν παράλληλα σε κάθε κύκλο, εάν το υπάρχον υπολογιστικό περιβάλλον είναι διαθέσιμο για αυτό. Ωστόσο, ακόμη και ένα σωστά σχεδιασμένο υπερκλιμακωτό Ο επεξεργαστής μπορεί να υποστηρίξει από 2 έως 5,8 εντολές ανά κύκλο. Αυτή η πτώση οφείλεται κυρίως στο κόστος επικοινωνίας και συστήματος.

Το επίπεδο παραλληλισμού έχει ισχυρότερο αντίκτυπο στην υπολογιστική απόδοση από το βαθμό παραλληλισμού.

Εξετάζονται αλγοριθμικά επίπεδα και επίπεδα παραλληλισμού κυκλώματος.

Διακρίνονται τα ακόλουθα αλγοριθμικά επίπεδα παραλληλισμού:

1. Επίπεδο εργασίας:

α) μεταξύ των εργασιών·

β) μεταξύ των φάσεων εργασίας.

2. Επίπεδο λογισμικού:

α) μεταξύ τμημάτων του προγράμματος·

β) εντός κύκλων.

3. Επίπεδο εντολών (μεταξύ των φάσεων εκτέλεσης εντολών).

4. Αριθμητική και επίπεδο bit:

">α) μεταξύ στοιχείων μιας διανυσματικής πράξης.

">β) μέσα στα λογικά κυκλώματα της ALU.

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

">Το επίπεδο παραλληλισμού κυκλώματος είναι ένα επίπεδο υλικού στο οποίο πραγματοποιείται παραλληλισμός της επεξεργασίας δεδομένων ή οργάνωση παράλληλων υπολογισμών.

">Η παράλληλη επεξεργασία μπορεί να υλοποιηθεί στα ακόλουθα επίπεδα κυκλώματος:

">1. Σε επίπεδο λογικών πυλών και στοιχείων μνήμης (Εικ. 6.6).

">2. Επίπεδο λογικών κυκλωμάτων και απλά αυτόματα με μνήμη (Εικ. 6.7).

">3. Επίπεδο καταχωρητών και ολοκληρωμένων κυκλωμάτων μνήμης (Εικ. 6.8).

4. Επίπεδο στοιχειωδών μικροεπεξεργαστών (Εικ. 6.9).

«>5. Το επίπεδο των μακροεπεξεργαστών που υλοποιούν μεγάλες λειτουργίες (Εικ. 6.10).

6. Επίπεδο υπολογιστών, επεξεργαστών και προγραμμάτων (Εικ. 6.11).

«>4. Είδη παραλληλισμού

">4.1. Φυσικός παραλληλισμός και

">παραλληλισμός πολλαπλών αντικειμένων

Στο γράφημα πληροφοριών, μπορούν να εντοπιστούν «κάθετες» ανεξάρτητες υπογραφές που δεν χρησιμοποιούν αμοιβαία τυχόν ενδιάμεσα αποτελέσματα που λαμβάνονται κατά την εφαρμογή πρωτόγονων πράξεων άλλης υπογράφου. Αυτός ο τύπος παραλληλισμού ονομάζεται φυσικός παραλληλισμός ανεξάρτητων εργασιών.

Ένα πρόβλημα έχει φυσικό παραλληλισμό εάν στην αρχική του διατύπωση ανάγεται σε μια πράξη σε πολυδιάστατα διανύσματα, πολυδιάστατους πίνακες ή συναρτήσεις πλέγματος (Εικ. 6.12).

Ο παραλληλισμός πολλαπλών αντικειμένων είναι μια ειδική περίπτωση φυσικού παραλληλισμού. Το νόημά του είναι ότι η εργασία είναι η επεξεργασία πληροφοριών για διαφορετικά αλλά παρόμοια αντικείμενα που υποβάλλονται σε επεξεργασία χρησιμοποιώντας το ίδιο ή σχεδόν το ίδιο πρόγραμμα (Εικ. 6.13).

">Εδώ, οι λεγόμενες ολοκληρωτικές πράξεις καταλαμβάνουν σχετικά μικρό βάρος. Κατά την παραλληλοποίηση πολλών αντικειμένων, οι καταστάσεις εμφανίζονται πιο συχνά από ό,τι στη γενική περίπτωση, όταν μεμονωμένες ενότητες υπολογισμών πρέπει να εκτελούνται διαφορετικά για διαφορετικά αντικείμενα.

">4.2. Παραλληλισμός ανεξάρτητων κλάδων

Η ουσία του παραλληλισμού των ανεξάρτητων κλάδων είναι ότι στο πρόγραμμα για την επίλυση ενός προβλήματος, μπορούν να διακριθούν ανεξάρτητα μέρη, που ονομάζονται κλάδοι. Εάν ο υπολογιστής διαθέτει το κατάλληλο υλικό, οι κλάδοι μπορούν να εκτελεστούν παράλληλα (Εικ. 6.14).

">Ο κλάδος του προγράμματος Y δεν εξαρτάται από τον κλάδο X εάν:

"> - δεν υπάρχουν λειτουργικές συνδέσεις μεταξύ τους, δηλαδή καμία από τις μεταβλητές εισόδου του κλάδου Y δεν είναι η μεταβλητή εξόδου του κλάδου X ή οποιοσδήποτε κλάδος που εξαρτάται από το X.

"> - δεν υπάρχει σύνδεση μεταξύ τους μέσω πεδίων μνήμης εργασίας.

"> - πρέπει να εκτελεστούν χρησιμοποιώντας διαφορετικά προγράμματα.

"> - είναι ανεξάρτητα στον έλεγχο, δηλαδή η συνθήκη για την εκτέλεση του κλάδου Υ δεν πρέπει να εξαρτάται από τα χαρακτηριστικά που δημιουργούνται κατά την εκτέλεση του κλάδου X ή τον κλάδο που εξαρτάται από αυτόν.

">4.3. Παραλληλισμός συναφών πράξεων ή

">τοπικός παραλληλισμός

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

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

Στις περισσότερες περιπτώσεις, ο δείκτης συνδεσιμότητας γειτονικών λειτουργιών δεν εξαρτάται τόσο από το πρόβλημα όσο από την ποιότητα της τοπικής βελτιστοποίησης.

">5. Μοντέλο προβλήματος

Κατασκευάζεται ένα μοντέλο του προβλήματος για μια συγκριτική ανάλυση των δομών των παράλληλων υπολογιστών. Επομένως, θα πρέπει να είναι αρκετά γενικής φύσεως και να περιγράφει μόνο τη σύνθεση των μορφών παραλληλισμού και των τύπων συνδέσεων.

Κατά κανόνα, οποιοδήποτε μοντέλο προβλήματος χτίζεται με βάση την ανάλυση της μοντελοποιημένης κατηγορίας προβλημάτων. Με βάση τα αποτελέσματα της ανάλυσης, οι αλγόριθμοι μετατρέπονται σε παράλληλη μορφή. Ο υπό μελέτη αλγόριθμος μπορεί να αναπαρασταθεί ως ένα πρόγραμμα που αποτελείται από μια ακολουθία τμημάτων τριών τύπων (Εικ. 6.15):

  1. βαθμωτές τομές (SC);
  2. τμήματα με παραλληλισμό ανεξάρτητων κλάδων (BT).
  3. διανυσματικές τομές (VC).

Το μοντέλο εργασίας είναι ένα σύνολο παραμέτρων που χαρακτηρίζουν ένα παράλληλο πρόγραμμα

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

">Εικ. 6.15. Ο λόγος του συνολικού αριθμού υπολογισμών ανά διαφορετικά τμήματα του αλγορίθμου στο μοντέλο προβλήματος

" xml:lang="en-US" lang="en-US">W">σκ

" xml:lang="en-US" lang="en-US">Ww

" xml:lang="en-US" lang="en-US">W">vk

" xml:lang="en-US" lang="en-US">μ;vertical-align:sub">sk

" xml:lang="en-US" lang="en-US">μ;vertical-align:sub" xml:lang="en-US" lang="en-US">tu

" xml:lang="en-US" lang="en-US">μ;vertical-align:sub">vk

" xml:lang="en-US" lang="en-US">A

" xml:lang="en-US" lang="en-US">В

" xml:lang="en-US" lang="en-US">C

όγκος υπολογισμών

σχετικό μήκος

«Ο παραλληλισμός ως μέθοδος παράλληλης επεξεργασίας δεδομένων»

Kotovsk 2010

Εισαγωγή

Η ραγδαία ανάπτυξη της επιστήμης και η διείσδυση της ανθρώπινης σκέψης σε συνεχώς νέους τομείς, μαζί με την επίλυση προβλημάτων που τέθηκαν προηγουμένως, δημιουργεί συνεχώς μια ροή ερωτημάτων και θέτει νέα, συνήθως πιο σύνθετα, καθήκοντα. Την εποχή των πρώτων υπολογιστών, φαινόταν ότι η αύξηση της ταχύτητάς τους κατά 100 φορές θα έλυνε τα περισσότερα προβλήματα, αλλά η απόδοση gigaflop των σύγχρονων υπερυπολογιστών σήμερα είναι σαφώς ανεπαρκής για πολλούς επιστήμονες. Ηλεκτρική και υδροδυναμική, σεισμική εξερεύνηση και πρόγνωση καιρού, μοντελοποίηση χημικών ενώσεων, έρευνα εικονικής πραγματικότητας - αυτή δεν είναι μια πλήρης λίστα τομέων της επιστήμης, των οποίων οι ερευνητές χρησιμοποιούν κάθε ευκαιρία για να επιταχύνουν την εκτέλεση των προγραμμάτων τους.

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

Οι προσπάθειες συστηματοποίησης ολόκληρου του συνόλου των αρχιτεκτονικών ξεκίνησαν αφού ο M. Flynn δημοσίευσε την πρώτη έκδοση της ταξινόμησης των υπολογιστικών συστημάτων στα τέλη της δεκαετίας του '60 και συνεχίζεται συνεχώς μέχρι σήμερα. Η ταξινόμηση είναι πολύ σημαντική για την καλύτερη κατανόηση της θεματικής περιοχής που μελετάται, αλλά η εύρεση μιας επιτυχημένης ταξινόμησης μπορεί να έχει μια σειρά από σημαντικές συνέπειες.

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

Η ταξινόμηση θα πρέπει να βοηθήσει στην κατανόηση του τι είναι κάθε αρχιτεκτονική, πώς συνδέονται μεταξύ τους, τι πρέπει να ληφθεί υπόψη για τη σύνταξη πραγματικά αποτελεσματικών προγραμμάτων ή ποια κατηγορία αρχιτεκτονικών θα πρέπει να στοχεύει για την επίλυση της απαιτούμενης κατηγορίας προβλημάτων. Ταυτόχρονα, μια επιτυχημένη ταξινόμηση θα μπορούσε να προτείνει πιθανούς τρόπους βελτίωσης των υπολογιστών και από αυτή την άποψη θα πρέπει να είναι αρκετά σημαντική. Είναι δύσκολο να περιμένουμε να βρούμε μη τετριμμένα «τυφλά σημεία», για παράδειγμα, στην ταξινόμηση κατά κόστος, αλλά η σκέψη για μια πιθανή ταξινόμηση από την άποψη της απλότητας και της δυνατότητας κατασκευής του προγραμματισμού μπορεί να είναι εξαιρετικά χρήσιμη στον καθορισμό κατευθύνσεων για αναζήτηση νέων αρχιτεκτονικών.

1. Παράλληλα υπολογιστικά συστήματα

Τα παράλληλα υπολογιστικά συστήματα είναι φυσικά συστήματα υπολογιστών και λογισμικού που εφαρμόζουν παράλληλη επεξεργασία δεδομένων με τον ένα ή τον άλλο τρόπο σε πολλούς υπολογιστικούς κόμβους.

Η ιδέα του παράλληλου υπολογισμού βασίζεται στην ιδέα ότι τα περισσότερα προβλήματα μπορούν να χωριστούν σε ένα σύνολο μικρότερων προβλημάτων που μπορούν να επιλυθούν ταυτόχρονα. Συνήθως, ο παράλληλος υπολογισμός απαιτεί συντονισμό. Ο παράλληλος υπολογισμός έρχεται σε διάφορες μορφές: παραλληλισμός επιπέδου bit, παραλληλισμός επιπέδου εντολών, παραλληλισμός δεδομένων και παραλληλισμός εργασιών. Ο παράλληλος υπολογισμός χρησιμοποιείται εδώ και πολλά χρόνια, κυρίως σε υπολογιστές υψηλής απόδοσης, αλλά πρόσφατα έχει αυξηθεί το ενδιαφέρον για αυτόν λόγω της ύπαρξης φυσικών περιορισμών στην αύξηση των ταχυτήτων ρολογιού του επεξεργαστή. Οι παράλληλοι υπολογιστές έχουν γίνει κυρίαρχο παράδειγμα στην αρχιτεκτονική των υπολογιστών, κυρίως με τη μορφή πολυπύρηνων επεξεργαστών.

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

Εάν ο υπολογισμός δεν περιλαμβάνει κυκλικές (επαναλαμβανόμενες) ενέργειες, τότε οι N υπολογιστικές μονάδες δεν θα εκτελούν ποτέ εργασία N φορές γρηγορότερα από μια μεμονωμένη μονάδα υπολογιστών.

Για παράδειγμα, για να ταξινομήσετε γρήγορα έναν πίνακα σε ένα μηχάνημα διπλού επεξεργαστή, μπορείτε να χωρίσετε τον πίνακα στη μέση και να ταξινομήσετε κάθε μισό σε έναν ξεχωριστό επεξεργαστή. Η ταξινόμηση κάθε μισού μπορεί να διαρκέσει διαφορετικό χρόνο, επομένως ο συγχρονισμός είναι απαραίτητος.

2. Τύποι παραλληλισμού

2.1 Παραλληλισμός επιπέδου bit

Αυτή η μορφή παραλληλισμού βασίζεται στην αύξηση του μεγέθους της μηχανής λέξης. Η αύξηση του μεγέθους της λέξης μηχανής μειώνει τον αριθμό των λειτουργιών που απαιτούνται από τον επεξεργαστή για την εκτέλεση εργασιών σε μεταβλητές των οποίων το μέγεθος υπερβαίνει το μέγεθος της λέξης μηχανής. Για παράδειγμα: σε έναν επεξεργαστή 8 bit πρέπει να προσθέσετε δύο ακέραιους αριθμούς 16 bit. Για να το κάνετε αυτό, πρέπει πρώτα να προσθέσετε τα κάτω 8 bit των αριθμών, στη συνέχεια να προσθέσετε τα επάνω 8 bit και να προσθέσετε την τιμή της σημαίας μεταφοράς στο αποτέλεσμα της πρόσθεσής τους. Σύνολο 3 οδηγίες. Με έναν επεξεργαστή 16-bit, μπορείτε να εκτελέσετε αυτήν τη λειτουργία με μία μόνο εντολή.

Ιστορικά, οι μικροεπεξεργαστές 4 bit αντικαταστάθηκαν από μικροεπεξεργαστές 8 bit, ακολουθούμενοι από μικροεπεξεργαστές 16 bit και 32 bit. Οι επεξεργαστές 32 bit είναι από καιρό το πρότυπο στην καθημερινή πληροφορική. Με την έλευση της τεχνολογίας x86–64, οι επεξεργαστές 64-bit άρχισαν να χρησιμοποιούνται για αυτούς τους σκοπούς.

2.2 Παραλληλισμός επιπέδου διδασκαλίας

Ένα πρόγραμμα υπολογιστή είναι ουσιαστικά μια ροή εντολών που εκτελούνται από έναν επεξεργαστή. Αλλά μπορείτε να αλλάξετε τη σειρά αυτών των οδηγιών, να τις διανείμετε σε ομάδες που θα εκτελούνται παράλληλα, χωρίς να αλλάξετε το αποτέλεσμα ολόκληρου του προγράμματος. Αυτή η τεχνική είναι γνωστή ως παραλληλισμός επιπέδου εντολών. Η πρόοδος στην ανάπτυξη του παραλληλισμού σε επίπεδο εντολών στην αρχιτεκτονική υπολογιστών σημειώθηκε από τα μέσα της δεκαετίας του 1980 έως τα μέσα της δεκαετίας του 1990.

Οι σύγχρονοι επεξεργαστές έχουν μια σειρά εντολών πολλαπλών σταδίων. Κάθε στάδιο του αγωγού αντιστοιχεί σε μια συγκεκριμένη ενέργεια που εκτελείται από τον επεξεργαστή σε αυτήν την οδηγία σε αυτό το στάδιο. Ένας επεξεργαστής με Ν στάδια διοχέτευσης μπορεί να έχει ταυτόχρονα έως και Ν διαφορετικές εντολές σε διαφορετικά επίπεδα πληρότητας. Ένα κλασικό παράδειγμα επεξεργαστή με διοχέτευση είναι ένας επεξεργαστής RISC με 5 στάδια: ανάκτηση εντολών (IF), αποκωδικοποίηση εντολών (ID), εκτέλεση εντολής (EX), πρόσβαση στη μνήμη (MEM), εγγραφή αποτελεσμάτων σε καταχωρητές (WB) . Ο επεξεργαστής Pentium 4 διαθέτει αγωγό 35 σταδίων.

Ορισμένοι επεξεργαστές, εκτός από τη χρήση αγωγών, έχουν τη δυνατότητα να εκτελούν πολλές εντολές ταυτόχρονα, γεγονός που παρέχει επιπλέον παραλληλισμό σε επίπεδο εντολών. Είναι δυνατή η εφαρμογή αυτής της μεθόδου χρησιμοποιώντας υπερκλιμάκωση, όπου οι εντολές μπορούν να ομαδοποιηθούν για παράλληλη εκτέλεση (αν δεν έχουν εξαρτήσεις δεδομένων). Είναι επίσης δυνατές οι υλοποιήσεις που χρησιμοποιούν ρητό παραλληλισμό σε επίπεδο εντολών: VLIW και EPIC.

2.3 Παραλληλισμός δεδομένων

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

2.4 Παραλληλισμός εργασιών (πολυνηματική)

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

2.5 Κατανεμημένα λειτουργικά συστήματα

Ένα κατανεμημένο λειτουργικό σύστημα, κατανέμοντας δυναμικά και αυτόματα την εργασία στα διάφορα μηχανήματα του συστήματος για επεξεργασία, προκαλεί ένα σύνολο δικτυωμένων μηχανών να λειτουργούν ως εικονικός μονοεπεξεργαστής. Ο χρήστης ενός κατανεμημένου λειτουργικού συστήματος, σε γενικές γραμμές, δεν έχει πληροφορίες σχετικά με το σε ποιο μηχάνημα εκτελείται η εργασία του.

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

Ένας υπερυπολογιστής είναι ένας πολύ ισχυρός υπολογιστής με απόδοση άνω των 10 MFLOPS. Σήμερα αυτό το αποτέλεσμα καλύπτεται όχι μόνο από σταθμούς εργασίας, αλλά και από κορυφαία απόδοση, και Η/Υ. Στις αρχές της δεκαετίας του 1990, το όριο είχε ήδη καθοριστεί γύρω από το όριο των 300 MFLOPS. Το 2001, ειδικοί από δύο κορυφαίες χώρες «υπερυπολογιστή», τις ΗΠΑ και την Ιαπωνία, συμφώνησαν να ανεβάσουν τον πήχη στα 5 GFLOPS.

Έτσι, τα κύρια χαρακτηριστικά που χαρακτηρίζουν έναν υπερυπολογιστή είναι τα ακόλουθα:

  • υψηλότερη απόδοση?
  • το πιο σύγχρονο τεχνολογικό επίπεδο (για παράδειγμα, τεχνολογία GaAs).
  • συγκεκριμένες αρχιτεκτονικές λύσεις που στοχεύουν στην αύξηση της απόδοσης (για παράδειγμα, η παρουσία λειτουργιών σε διανύσματα).
  • τιμή, συνήθως πάνω από 1-2 εκατομμύρια δολάρια.

Ποιος παράγοντας είναι καθοριστικός για την επίτευξη των σημερινών φανταστικών επιπέδων απόδοσης; Ας στραφούμε στα ιστορικά γεγονότα. Ένας από τους πρώτους υπολογιστές EDSAC (1949), ο οποίος είχε χρόνο ρολογιού 2 μs, μπορούσε να εκτελέσει κατά μέσο όρο 100 αριθμητικές πράξεις ανά δευτερόλεπτο. ΕΝΑ κορυφαία απόδοση υπερυπολογιστής CRAY C90 με χρόνο ρολογιού περίπου 4 ns - περίπου 1 δισεκατομμύριο αριθμητικές πράξεις ανά δευτερόλεπτο. Ετσι, εκτέλεσηΚατά τη διάρκεια αυτής της περιόδου, η ταχύτητα των υπολογιστών αυξήθηκε περίπου 10 εκατομμύρια φορές, αλλά ο χρόνος κύκλου του ρολογιού μειώθηκε μόνο 500 φορές. Ως εκ τούτου, αύξηση της παραγωγικότηταςπροέκυψε λόγω άλλων παραγόντων, μεταξύ των οποίων ο σημαντικότερος είναι η χρήση νέων αρχιτεκτονικών λύσεων, ιδίως η αρχή παράλληλη επεξεργασία δεδομένων.

Έχει δύο ποικιλίες: αγωγού και παράλληλη.

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

Παράλληλη επεξεργασία δεδομένωνπροϋποθέτει την παρουσία πολλών λειτουργικά ανεξάρτητων συσκευών.

Νόμος του Amdahl

Νόμος του Amdahl

μικρό<= 1/

όπου S είναι η επιτάχυνση, f είναι η αναλογία των λειτουργιών που πρέπει να εκτελεστούν διαδοχικά, p είναι ο αριθμός των επεξεργαστών.

Συμπέρασμα από Ο νόμος του Amdahl: για να επιταχυνθεί η εκτέλεση ενός προγράμματος κατά q φορές, είναι απαραίτητο να επιταχυνθεί τουλάχιστον q φορές και τουλάχιστον το (1-1/q)ο μέρος του προγράμματος. Επομένως, εάν πρέπει να επιταχύνετε ένα πρόγραμμα κατά 100 φορές σε σύγκριση με τη διαδοχική του έκδοση, τότε δεν χρειάζεται να έχετε λιγότερη επιτάχυνση τουλάχιστον στο 99,99% του κώδικα!

Η ιστορία της εμφάνισης του παραλληλισμού στην αρχιτεκτονική των υπολογιστών

Όλοι οι σύγχρονοι επεξεργαστές χρησιμοποιούν κάποια μορφή

  • 1974 - ALLIAC: επεξεργαστές matrix (CU + matrix 64 επεξεργαστών).
  • 1976 - CRAY1: vector-pipeline επεξεργαστές. Εισαγωγή διανυσματικών εντολών που λειτουργούν με ολόκληρους πίνακες ανεξάρτητων δεδομένων.
  • Παράλληλη επεξεργασία δεδομένων

    Επιστήμη Υπολογιστών, Κυβερνητική και Προγραμματισμός

    Αυτόματη ανίχνευση συγχρονισμού. Βαθμός και επίπεδα παραλληλισμού. Τύποι παραλληλισμού. Η απόδοση των παράλληλων υπολογιστών εξαρτάται από πολλούς παράγοντες και, σε μεγάλο βαθμό, από την αρχιτεκτονική και τη δομή του συστήματος, σχεδιάστε τη δομή ενός παράλληλου συστήματος και εξηγήστε: από το βαθμό και το επίπεδο παραλληλισμού στο σύστημα. από την οργάνωση της μεταφοράς δεδομένων μεταξύ επεξεργαστών παράλληλης εργασίας· από το σύστημα μεταγωγής? από την αλληλεπίδραση επεξεργαστών και μνήμης. σχετικά με τη σχέση μεταξύ υλοποίησης υλικού και λογισμικού μιας μακροεντολής.

    Διάλεξη 1

    Παράλληλη επεξεργασία δεδομένων

    Σχέδιο

    1. Διαβαθμισμένη-παράλληλη μορφή του αλγορίθμου.

    2. Αυτόματη ανίχνευση συγχρονισμού.

    3. Βαθμός και επίπεδα παραλληλισμού.

    4. Είδη παραλληλισμού.

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

    Η απόδοση των παράλληλων υπολογιστών εξαρτάται από πολλούς παράγοντες και, σε μεγάλο βαθμό, από την αρχιτεκτονική και τη δομή του συστήματος(να σχεδιάσετε τη δομή ενός παράλληλου συστήματος και να εξηγήσετε):

    Σχετικά με το βαθμό και το επίπεδο παραλληλισμού στο σύστημα.

    Από την οργάνωση μεταφοράς δεδομένων μεταξύ επεξεργαστών παράλληλης εργασίας.

    Από το σύστημα μεταγωγής?

    Από την αλληλεπίδραση επεξεργαστών και μνήμης.

    Από τη σχέση μεταξύ υλικού και λογισμικού υλοποίησης μιας μακροεντολής.

    Η παράλληλη επεξεργασία μπορεί να βασίζεται σε διάφορες αρχές:

    Χωρικός παραλληλισμός;

    Χρονικός παραλληλισμός:

    1. Σωληνώσεις.
    2. Διανυσματοποίηση.
    3. Μήτρα.
    4. Συστολικός.
    5. Οργάνωση της δομής επεξεργασίας ροής δεδομένων.
    6. Οργάνωση του συστήματος με βάση τη δομή του υπερκύβου.
    7. Δυναμική αναδιάρθρωση της δομής του αεροσκάφους.

    Η περιγραφή οποιουδήποτε αλγορίθμου είναι ιεραρχική, με βάση την ιδιότητα ένθεσης. Κατά τον προγραμματισμό, εκχωρήστεεπίπεδα φωλιάς:tasks, tasks, subtasks (διαδικασίες), macrooperations, operations.Η ένθεση καθορίζει το βάθος της παραλληλοποίησης και είναι μια από τις σημαντικές ιδιότητες των αλγορίθμων κατά την ανάλυση μοντέλων παράλληλων υπολογιστών.

    1. Διαβαθμισμένη-παράλληλη μορφή του αλγορίθμου

    Η πιο γενική μορφή αναπαράστασης των αλγορίθμων είναι το γράφημα πληροφοριών-ελέγχου του αλγορίθμου,που αντανακλά την εξάρτηση δεδομένων μεταξύ των τελεστών του αλγορίθμου και τις άνευ όρων και υπό όρους μεταβάσεις στο πρόγραμμα. Ένα τέτοιο γράφημα περιέχει σιωπηρά όλους τους τύπους παραλληλισμού για την επιλεγμένη μέθοδο επίλυσης του προβλήματος.Μια πιο συγκεκριμένη μορφή αναπαράστασης του παραλληλισμού εργασιών είναι η συσκευή παράλληλης μορφής επιπέδου (LPF).

    Αλγόριθμος σε κλιμακωτή-παράλληλη μορφήαναπαρίσταται με τη μορφή βαθμίδων και η μηδενική βαθμίδα περιλαμβάνει τελεστές (κλαδιά) που είναι ανεξάρτητοι μεταξύ τους.

    Στο γράφημα μπορείτε να υποδείξετεμεταβάσεις , που σημαίνει τη μεταφορά των αποτελεσμάτων υπολογισμού μιας πρωταρχικής πράξης από το ένα επίπεδο σε μια πράξη από το επόμενο επίπεδο. Οι βαθμίδες χωρίζονται με μεταβάσεις. Μπορεί να είναι«κενές» μεταβάσειςΚαι «άδειες» πρωτόγονες πράξεις. Μια κενή πράξη αντιστοιχεί στην αποθήκευση του αποτελέσματος που λήφθηκε στο προηγούμενο επίπεδο. Σε μια διαδοχική αλυσίδα πράξεων, μια κενή πράξη μπορεί να τοποθετηθεί σε οποιοδήποτε επίπεδο.

    Κατά την κατασκευή των NFP, βασίζονται σε ένα βασικό σύνολο πρωτόγονων λειτουργιών (BNO). Η κλιμακωτή-παράλληλη μορφή χαρακτηρίζεται από τα εξήςΠαράμετροι:

    1. Μήκος του γραφήματος (αριθμός επιπέδων)ΜΕΓΑΛΟ.

    2. Το πλάτος της i-ης βαθμίδας είναι b i.

    3. Πλάτος παράλληλου γραφήματος B = max (b i ).

    4. Μέσο πλάτος του γραφήματος NAPΤην Τετ.

    5. Συντελεστής πλήρωσης i-η βαθμίδα k i .

    6. Ο συντελεστής διασποράς των πράξεων στο γράφημα είναι Q j i , j BNO , πού είναι η ποσότητα j -ο είδος πράξεων σε i-η βαθμίδα.

    7. Ο ελάχιστος απαιτούμενος αριθμός υπολογιστών (από το BNO) για την εφαρμογή του αλγόριθμου που αντιπροσωπεύεται από αυτό το γράφημα στο YAPF.

    8. Ελάχιστος χρόνος λύσης του αλγορίθμου (άθροισμα των χρόνων απόκρισης υπολογιστών με το μέγιστο ποσό υπολογισμών για κάθε επίπεδο) T min.

    9. Συνδεσιμότητα αλγορίθμου (ο αριθμός των ενδιάμεσων αποτελεσμάτων που πρέπει να αποθηκευτούν κατά την υλοποίηση του αλγορίθμου)ΜΕ .

    2. Αυτόματη ανίχνευση συγχρονισμού

    Υπάρχουν δύο πιθανοί τρόποι κατασκευής ενός παράλληλου αλγόριθμου: απευθείας από τη δήλωση του προβλήματος ή μετασχηματίζοντας έναν διαδοχικό αλγόριθμο.

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

    Η φύση των αλλαγών στον βαθμό παραλληλισμού κατά την προετοιμασία ενός προγράμματος μηχανής φαίνεται στο Σχ. 2.2.

    δυνητικός παραλληλισμός

    Μέθοδος

    λύσεις

    Πρωτότυπο κείμενο

    Πρόγραμμα μηχανής

    Ρύζι. 2.2. Αλλαγή πιθανού παραλληλισμού κατά την ανάπτυξη του προγράμματος:

    1 σύστημα παράλληλου προγραμματισμού.

    2 σειριακός προγραμματισμός και

    διανυσματικός μεταγλωττιστής

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

    Σε ένα διαδοχικό πρόγραμμα υπάρχουνπροφανές και κρυφό παράλληλη επεξεργασία.

    Κατά την ανάλυση ενός προγράμματος, κατασκευάζεται ένα γράφημα ροής δεδομένων. Για τον εντοπισμό προφανούς παραλληλισμού των διεργασιών, αναλύονται σύνολα μεταβλητών εισόδου (ανάγνωσης). R και εξόδου (καταγεγραμμένες) μεταβλητές W κάθε διαδικασία.

    Σαφής Η παράλληλη επεξεργασία μπορεί να ανιχνευθεί μεταξύ των διεργασιών i και j (i ≠ j ), πληρούν τις ακόλουθες προϋποθέσεις:

    Τα δεδομένα εισόδου μιας διεργασίας δεν πρέπει να τροποποιούνται (εγγράφονται) από άλλη διεργασία

    καμία διεργασία δεν πρέπει να τροποποιεί τις κοινές μεταβλητές

    α) R i W j =;

    β) W i R j =;

    γ) W i W j =;

    Κρυμμένος Η παράλληλη επεξεργασία απαιτεί κάποια διαδικασία για τον μετασχηματισμό ενός διαδοχικού προγράμματος ώστε να είναι δυνατή η παράλληλη εκτέλεσή του. Ο μετασχηματισμός θα μπορούσε να είναι ο εξής:

    α) μείωση του ύψους των δέντρων των αριθμητικών παραστάσεων (Εικ. 2.3). Για αριθμητικές εκφράσεις με n μεταβλητές ή σταθερές, η μείωση του ύψους του δέντρου σάς επιτρέπει να επιτύχετε ταχύτερη επεξεργασία παραγγελιών O(n/log2n ) χρησιμοποιώντας O(n) επεξεργαστές.

    β) μετασχηματισμός γραμμικών σχέσεων υποτροπής.

    ((α + β) + γ) + δ

    (α + β)+ (γ + δ)

    Ρύζι. 2.3. Μείωση ύψους δέντρων

    γ) αντικατάσταση χειριστών.

    δ) μετατροπή μπλοκ μεταβάσεων υπό όρους και βρόχων σε κανονική μορφή.

    ε) κατανομή των κύκλων.

    Οι παράλληλες αρχιτεκτονικές επιτυγχάνουν υψηλή απόδοση εάν ο μετασχηματισμός παραλληλισμού λαμβάνει υπόψη τα χαρακτηριστικά της αρχιτεκτονικής του υπολογιστή στην οποία υποτίθεται ότι θα εκτελεστεί ο αλγόριθμος.

    Κατά τη μετατροπή του παραλληλισμού, τα προγράμματα λαμβάνουν υπόψη: 1) τη διάταξη των δεδομένων στη μνήμη. 2) Διευθυνσιοδότηση μνήμης (ευρετηρίαση). 3) επιλογή διαδρομής δεδομένων (μέθοδος σύνδεσης επεξεργαστών και αποθήκευσης).

    Εικ.2.4. Αποθήκευση

    πίνακες μετατόπισης

    Ως παράδειγμα λαμβάνοντας υπόψη τη διάταξη της μνήμης, ας πάρουμε τη μνήμη με διαγώνια διεύθυνση. Για να διασφαλιστεί η παράλληλη επεξεργασία των πινάκων, τα στοιχεία των σειρών και των στηλών τους πρέπει να κατανέμονται μεταξύ των συσκευών αποθήκευσης του επεξεργαστή με τέτοιο τρόπο ώστε να μπορούν να διαβάζονται και να υποβάλλονται σε επεξεργασία ταυτόχρονα. Σε αυτή την περίπτωση, ο πίνακας αποθηκεύεται με μετατόπιση (Εικ. 2.4).

    Οποιοσδήποτε αλγόριθμος περιέχει διαδοχικές (βαθμωτές) ενότητες. Έχει αποδειχθεί ότι το μήκος αυτών των βαθμωτών τμημάτων είναι ο καθοριστικός παράγοντας κατά την εφαρμογή του αλγορίθμου σε παράλληλο υπολογιστή.

    3. Βαθμός και επίπεδα παραλληλισμού

    Βαθμός παραλληλισμού(ΡΕ) Αυτή είναι η σειρά του αριθμού των συσκευών παράλληλης εργασίας στο σύστημα κατά την εφαρμογή ενός αλγόριθμου εργασιών, υπό την προϋπόθεση ότι ο αριθμός των επεξεργαστών (συσκευών επεξεργασίας) δεν είναι περιορισμένος.(Υπάρχει και άλλος ορισμόςβαθμούς παραλληλισμούαυτός είναι ο αριθμός των επεξεργαστών ενός συστήματος πολλαπλών επεξεργαστών που συμμετέχουν παράλληλα στην εκτέλεση του προγράμματος κάθε φορά t.)

    1) Χαμηλός βαθμός: από 2 έως 10 επεξεργαστές.

    2) Μεσαίου βαθμού: από 10 έως 100 επεξεργαστές.

    3) Υψηλός βαθμός: από 100 έως 10 4 επεξεργαστές.

    4) Εξαιρετικά υψηλός βαθμός: από 10 4 έως 10 6 επεξεργαστές.

    Ρύζι. 2.5. Προφίλ συγχρονισμού

    Γραφική αναπαράσταση της παραμέτρου D(t ) ως συναρτήσεις του χρόνου ονομάζονταιπροφίλ παραλληλισμού προγράμματος. Οι αλλαγές στο επίπεδο φόρτου του επεξεργαστή κατά τη διάρκεια της περιόδου παρατήρησης εξαρτώνται από πολλούς παράγοντες (αλγόριθμος, διαθέσιμοι πόροι, βαθμός βελτιστοποίησης που παρέχεται από τον μεταγλωττιστή κ.λπ.). Στο Σχ. Το σχήμα 2.5 δείχνει ένα τυπικό προφίλ παραλληλισμού.

    Τα προγράμματα εφαρμογής έχουν ένα ευρύ φάσμα πιθανών παραλληλισμών. Σε υπολογιστικά εντατικά προγράμματα, μπορούν να εκτελεστούν 500 έως 3500 αριθμητικές πράξεις παράλληλα σε κάθε κύκλο, εάν υπάρχει ένα υπάρχον υπολογιστικό περιβάλλον για αυτό. Ωστόσο, ακόμη και ένας σωστά σχεδιασμένος superscalar επεξεργαστής μπορεί να υποστηρίξει από 2 έως 5,8 εντολές ανά κύκλο. Αυτή η μείωση οφείλεται κυρίως στο κόστος επικοινωνίας και συστήματος.

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

    εξετάζουν αλγοριθμικήκαι κύκλωμα επίπεδα παραλληλισμού.

    Διακρίνονται τα εξής:αλγοριθμικά επίπεδα παραλληλισμού:

    1. Επίπεδο εργασίας:

    α) μεταξύ των εργασιών·

    β) μεταξύ των φάσεων εργασίας.

    2. Επίπεδο λογισμικού:

    α) μεταξύ των τμημάτων του προγράμματος(τμήματα μιας εργασίας εκτελούνται σε πολλούς υπολογιστές).

    β) εντός κύκλων.

    (Εάν οι μεμονωμένες επαναλήψεις σε έναν βρόχο δεν εξαρτώνται η μία από την άλλη. Για παράδειγμα : Για I:=1 έως N κάντε A(I):=B(I) + C(I))

    3. Επίπεδο εντολών:

    α) μεταξύ των φάσεων της εκτέλεσης της εντολής.

    4. Αριθμητική και επίπεδο bit:

    α) μεταξύ στοιχείων μιας διανυσματικής πράξης.

    β) μέσα στα λογικά κυκλώματα του ALU.

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

    Επίπεδο παραλληλισμού κυκλώματοςΑυτό είναι το επίπεδο υλικού στο οποίο πραγματοποιείται η παραλληλοποίηση της επεξεργασίας δεδομένων ή η οργάνωση παράλληλων υπολογιστών.

    Η παράλληλη επεξεργασία μπορεί να υλοποιηθεί στα ακόλουθα επίπεδα κυκλώματος:

    1. Σε επίπεδο λογικών πυλών και στοιχείων μνήμης.Αυτό είναι το χαμηλότερο επίπεδο τρανζίστορ. Εδώ δημιουργούνται παράλληλα λογικά κυκλώματα από λογικές πύλες (ΜΕΤΑ ΜΕΣΗΜΒΡΙΑΣ ) (για παράδειγμα: παράλληλος αθροιστής).

    2. Επίπεδο λογικών κυκλωμάτων και απλά αυτόματα με μνήμη.Ένα παράλληλο στοιχειώδες αυτόματο (ΕΑ).

    3. Επίπεδο καταχωρητών και ολοκληρωμένων κυκλωμάτων μνήμης.Τα στοιχειώδη αυτόματα χρησιμοποιούνται για τη λήψη παράλληλων κυκλωμάτων μικροεπεξεργαστών (βουλευτής).

    4. Επίπεδο στοιχειωδών μικροεπεξεργαστών.Οι παράλληλοι μακροεπεξεργαστές κατασκευάζονται από μικροεπεξεργαστές για να εκτελούν λειτουργίες μεσαίου μπλοκ (ΧΑΡΤΗΣ).

    5 . Το επίπεδο των μακροεπεξεργαστών που υλοποιούν μεγάλες λειτουργίες.Εδώ πραγματοποιείται παραλληλισμός μακροεπιχειρήσεων. Τα παράλληλα συστήματα πολλαπλών επεξεργαστών είναι χτισμένα σε μακροεπεξεργαστές ( MPS).

    6. Επίπεδο υπολογιστών, επεξεργαστών και προγραμμάτων.Το υψηλότερο επίπεδο παραλληλισμού από συστήματα πολλαπλών επεξεργαστών, επιτυγχάνονται παράλληλα συστήματα υπολογιστών (Ήλιος).

    4. Είδη παραλληλισμού

    4.1. Φυσικός παραλληλισμός και

    παραλληλισμός πολλαπλών αντικειμένων

    Στο γράφημα πληροφοριών, μπορούν να εντοπιστούν «κάθετες» ανεξάρτητες υπογραφές που δεν χρησιμοποιούν αμοιβαία τυχόν ενδιάμεσα αποτελέσματα που λαμβάνονται κατά την εφαρμογή πρωτόγονων πράξεων άλλης υπογράφου. Αυτός ο τύπος παραλληλισμού ονομάζεται φυσικός παραλληλισμός ανεξάρτητων εργασιών.

    Το καθήκον έχει φυσικός παραλληλισμός, εάν στην αρχική του διατύπωση ανάγεται σε μια πράξη σε πολυδιάστατα διανύσματα, πολυδιάστατους πίνακες ή συναρτήσεις πλέγματος (Εικ. 2.6). Τα ενδιάμεσα αποτελέσματα εργασιών δεν χρησιμοποιούνται εδώ. Κάθε εργασία προγραμματίζεται ανεξάρτητα από τις άλλες. Αυτός ο τύπος παραλληλισμού δεν απαιτεί συνδυασμό υπολογιστών σε συμπλέγματα. Ωστόσο, η αύξηση του αριθμού των ανεξάρτητων εργασιών στο ODS αυξάνει την απόδοση του συστήματος. Για παράδειγμα: επεξεργασία συναλλαγών βάσης δεδομένων σε διακομιστές πολλαπλών επεξεργαστών.

    1 εργασία

    εργασία 2

    Ρύζι. 2.6. Γράφημα πληροφοριών μιας εργασίας που χαρακτηρίζεται από φυσικό παραλληλισμό

    Όρι

    Όρι

    Όρι

    Όρι

    Ori+1

    Ori+1

    Ori+1

    Ori+1

    στο 1

    στις 2

    στις 3

    στις 4

    Ρύζι. 2.7. Γράφημα πληροφοριών

    έργο που χαρακτηρίζεται

    παραλληλισμός πολλών αντικειμένων

    Παραλληλισμός πολλαπλών αντικειμένωναντιπροσωπεύει μια ειδική περίπτωση φυσικού παραλληλισμού. Το νόημά του είναι ότι η εργασία είναι η επεξεργασία πληροφοριών για διαφορετικά αλλά παρόμοια αντικείμενα που υποβάλλονται σε επεξεργασία χρησιμοποιώντας το ίδιο ή σχεδόν το ίδιο πρόγραμμα (Εικ. 2.7).

    Εδώ το λεγόμενοολοκληρωμένες λειτουργίες. Οι αρχικοί τελεστές των ολοκληρωτικών πράξεων είναι διανύσματα ή συναρτήσεις ή σύνολα αντικειμένων και το αποτέλεσμα είναι ένας αριθμός. Για παράδειγμα, υπολογισμός του γινόμενου κουκκίδων για διανύσματα n-διαστάσεων

    περιλαμβάνει δύο τύπους πράξεων: ένα κατά ζεύγη γινόμενο διανυσματικών συνιστωσών και στη συνέχεια μια «ολοκληρωτική πράξη» (μια πράξη σε ένα διάνυσμα n-διάστασης) που συνοψίζει όλα τα συστατικά αυτού του διανύσματος.

    Κατά την παραλληλοποίηση πολλών αντικειμένων, οι καταστάσεις εμφανίζονται πιο συχνά από ό,τι στη γενική περίπτωση, όταν μεμονωμένες ενότητες υπολογισμών πρέπει να εκτελούνται διαφορετικά για διαφορετικά αντικείμενα.

    Για παράδειγμα, όταν βρίσκετε τις τιμές ορισμένων συναρτήσεων που περιορίζονται σε μια συγκεκριμένη περιοχή. Οι τιμές μέσα στην περιοχή για όλα τα σημεία υπολογίζονται χρησιμοποιώντας έναν τύπο και στα οριακά σημεία - χρησιμοποιώντας έναν άλλο.

    Ο παραλληλισμός πολλαπλών αντικειμένων χαρακτηρίζεται από τα ακόλουθαΠαράμετροι:

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

    2. Μέση διάρκεια προγράμματος L μέσος υπολογίζεται με βάση την κατάταξη της εργασίας.

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

    3. Μέγεθος ασυμφωνίας προβλήματοςρε

    Εάν το πρόγραμμα επεξεργασίας πληροφοριών για όλους r τα αντικείμενα είναι ακριβώς τα ίδια, λοιπόνρε =1 και όσο περισσότερο διαφέρουν τα προγράμματα διαφορετικών αντικειμένων μεταξύ τους, τόσο περισσότεροΡΕ.

    4.2. Παραλληλισμός ανεξάρτητων κλάδων

    Η ουσία παραλληλισμός ανεξάρτητων κλάδωνσυνίσταται στο γεγονός ότι στο πρόγραμμα για την επίλυση ενός προβλήματος μπορούν να διακριθούν ανεξάρτητα μέρη, που ονομάζονται κλάδοι. Εάν ο υπολογιστής διαθέτει το κατάλληλο υλικό, οι κλάδοι μπορούν να εκτελεστούν παράλληλα (Εικ. 2.8).

    Πρόγραμμα κλάδος Υ ανεξάρτητο από κλάδο X εάν:

    Ρύζι. 2.8. Γράφημα πληροφοριών ενός προβλήματος που χαρακτηρίζεται από

    παραλληλισμός ανεξάρτητων κλάδων

    μεταξυ τους χωρίς λειτουργικές συνδέσεις, δηλ. Καμία από τις μεταβλητές εισόδου του κλάδου Υ δεν είναι η μεταβλητή εξόδου του κλάδου Χ ή οποιουδήποτε κλάδου που εξαρτάται από το Χ.

    1. μεταξύ δεν έχουν καμία σύνδεση μεταξύ των πεδίων μνήμης εργασίας;
    2. πρέπει να εκπληρωθούνσύμφωνα με διαφορετικά προγράμματα;
    3. ανεξάρτητη στη διαχείριση, δηλ. η συνθήκη για την εκτέλεση του κλάδου Y δεν πρέπει να εξαρτάται από τα χαρακτηριστικά που δημιουργούνται κατά την εκτέλεση του κλάδου X ή τον κλάδο που εξαρτάται από αυτόν.

    4.3. Παραλληλισμός παρακείμενων πράξεων ή

    τοπικός παραλληλισμός

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

    Ο τοπικός παραλληλισμός χαρακτηρίζεται από τα εξήςΠαράμετροι:

    1. Δείκτης συνδεσιμότητας παρακείμενων λειτουργιώνείναι η πιθανότητα ότι το αποτέλεσμα κάποιας λειτουργίας θα χρησιμοποιηθεί στην επόμενη πράξη. Όσο λιγότερο συνδεδεμένη είναι μια πράξη, τόσο μεγαλύτερο είναι το βάθος παραλληλισμού των παρακείμενων πράξεων. Συνήθως η τιμή έχει τιμές 0,10,5.

    2. Η πιθανότητα, ξεκινώντας από μια δεδομένη πράξη, να υπάρχει μια αλυσίδα μήκους τουλάχιστον l l

    3. Η πιθανότητα ότι, ξεκινώντας από οποιαδήποτε λειτουργία στο πρόγραμμα, υπάρχει μια αλυσίδα ακριβώςμεγάλο λειτουργίες που μπορούν να εκτελεστούν ταυτόχροναμεγάλο

    4. Βάθος παραλληλισμού παρακείμενων πράξεων L PSO αυτή είναι η μαθηματική προσδοκία του μήκους μιας αλυσίδας πράξεων που μπορεί να εκτελεστεί ταυτόχρονα

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

    Στις περισσότερες περιπτώσεις, ο δείκτης συνδεσιμότητας γειτονικών λειτουργιών δεν εξαρτάται τόσο από το πρόβλημα όσο από την ποιότητα της τοπικής βελτιστοποίησης.

    ________________________________________________________________________________________________

    Μάθημα "Οργάνωση Υπολογιστών"

    10 -

    (εργασία μαθήματος)


    Καθώς και άλλα έργα που μπορεί να σας ενδιαφέρουν

    54055. Urochiste vidkritya tizhnya Logika 149,5 KB
    Μαθαίνω. Σας επιτρέπω να ανοίξετε την περίοδο της λογικής, υποβάλετε ομάδες και υποβάλετε αναφορές. Uvaga Uvaga 2 μελέτες. Καλησπέρα αγαπημένα παιδιά και καλεσμένοι 1ος μαθητής.
    54056. Ενοποίηση μεταξύ αρχικών θεμάτων και λογικής 120,5 KB
    Τα παιδιά πρέπει να γνωρίζουν τους κανόνες και τους νόμους της λογικής, μπορούν να σχηματίσουν λογικά μυαλά και να αναπτύξουν λογικά μυαλά. Η παραγωγικότητα της ολοκληρωμένης προσέγγισης μπορεί να είναι ιδιαίτερα εντυπωσιακή στα μαθήματα λογικής. Η γνώση του δασκάλου των βασικών κανόνων και νόμων της λογικής του επιτρέπει να χρησιμοποιεί λογικές τεχνικές την ώρα της επίλυσης προβληματικών καταστάσεων από τυχόν παράνομα προβλήματα. Αναπτύξτε στον ακαδημαϊκό κόσμο για να διαμορφώσετε κανόνες και νόμους της λογικής για να αναλύσετε τα στοιχεία της αξιολόγησης των σκέψεων του ατόμου και των άλλων ανθρώπων, να διαμορφώσετε και να αποδεχτείτε τεκμηριωμένες αποφάσεις...
    54057. Η διεπιστημονική ένταξη ως μέσο ενεργοποίησης της εκπαιδευτικής διαδικασίας 135,5 KB
    Σε εξειδικευμένα σχολεία με εις βάθος μελέτη ξένης γλώσσας, η διεπιστημονική ένταξη δεν πρέπει να κατέχει την τελευταία θέση. Από αυτή την άποψη, τα κοινά μαθήματα μαθηματικών και αγγλικών μπορεί να είναι πολύ ενδιαφέροντα.
    54058. ΑΛΓΕΒΡΑ ΔΗΛΩΣΕΩΝ. ΒΑΣΙΚΕΣ ΠΡΑΞΕΙΣ ΠΡΟΤΑΤΙΚΗΣ ΑΛΓΕΒΡΑΣ 1,77 MB
    Ένας πίνακας αλήθειας είναι ένας πίνακας που δημιουργεί μια αντιστοιχία μεταξύ όλων των πιθανών συνόλων λογικών μεταβλητών που περιλαμβάνονται σε μια λογική συνάρτηση και των τιμών της συνάρτησης.
    54059. Λογικές 81,18 KB
    Ξέρεις αυτόν τον άντρα μπλεγμένο με μανδύα Όχι. Παρεμπιπτόντως, αυτός είναι ο πατέρας σου. Το αντικείμενο της λογικής είναι αυτό προς το οποίο στρέφεται το ενδιαφέρον του επιστήμονα για τη λογική - η σκέψη για την ανθρώπινη σκέψη. Η λογική είναι η επιστήμη όχι όλης της σκέψης, αλλά της σωστής σκέψης για τη σωστή ορθολογική σκέψη, η οποία μπορεί να εκφραστεί σε συμβολική μορφή με λέξεις.
    54061. Δάσος Δέντρο. Σκηνώματα. Γιαγκόντι. Η ανάπτυξη μιας συνδετικής προσευχής 40 KB
    Meta: Μάθετε ένα παιδικό λεξικό βασισμένο σε γνώσεις, δηλώσεις για τον Dovkill. Μάθετε να υπερεκτιμάτε τη δύναμη και τη δύναμη των αντικειμένων, μάθετε να τα χαρακτηρίζετε, να διατυπώνετε λέξεις όσο το δυνατόν ακριβέστερα για να ταιριάζουν σε μια συγκεκριμένη κατάσταση ή να περιγράφουν.
    54062. Φέρτε τα χαρούμενα κοκίνιτς 44,5 KB
    Υπό μουσική επίβλεψη, τα παιδιά πηγαίνουν στο χώρο της μουσικής μαζί με τον λογοθεραπευτή. Λογοθεραπευτής: Καλημέρα, καλημέρα, αφήστε τα πιτσιρίκια σας να πλατσουρίσουν, αφήστε τα ποδαράκια σας να θαμπώσουν, αφήστε το στόμα σας να κοιμάται και να χαμογελάτε. Πού πήγα λογοθεραπευτής.
    54063. Λογοψυχοδιόρθωση σε ρομπότ και παιδιά με διαταραχές λόγου 67,5 KB
    Παιχνίδια και δικαίωμα ανάπτυξης της συναισθηματικής σφαίρας Kazka-gra: Σχετικά με τον ψαρά και το ψάρι Ο λογοθεραπευτής διαβάζει ένα μάθημα από το παραμύθι Ο. Με κώνους, ένταση και χαλάρωση των μυών των χεριών. Μεγάλη ένταση και χαλάρωση των μυών των ποδιών. Η Vedmedica ζητά το χρυσό bdzhilku να λεηλατήσει με τους vedmezhatami.

    Τρόποι βελτίωσης της απόδοσης του αεροσκάφους είναι ενσωματωμένοι στην αρχιτεκτονική του. Από τη μία πλευρά, αυτό είναι ένα σύνολο επεξεργαστών, μονάδων μνήμης, συσκευών εισόδου/εξόδου και, φυσικά, μεθόδων σύνδεσής τους, π.χ. περιβάλλον επικοινωνίας. Από την άλλη πλευρά, αυτές είναι οι πραγματικές ενέργειες του αεροσκάφους για την επίλυση ενός συγκεκριμένου προβλήματος, και αυτές είναι λειτουργίες σε εντολές και δεδομένα. Αυτή είναι στην πραγματικότητα ολόκληρη η κύρια βάση για παράλληλη επεξεργασία. Η παράλληλη επεξεργασία, που ενσωματώνει την ιδέα της ταυτόχρονης εκτέλεσης πολλών ενεργειών, έχει διάφορες ποικιλίες: υπερκλιμάκωση, διοχέτευση,SIMD- επεκτάσεις,Υπερπληθωρισμός Σπείρωμα, πολλαπλών πυρήνων.Βασικά, αυτοί οι τύποι παράλληλης επεξεργασίας είναι διαισθητικοί, επομένως θα κάνουμε μόνο μικρές επεξηγήσεις. Εάν μια συγκεκριμένη συσκευή εκτελεί μία λειτουργία ανά μονάδα χρόνου, τότε θα εκτελέσει χίλιες λειτουργίες σε χίλιες μονάδες. Αν υποθέσουμε ότι υπάρχουν πέντε πανομοιότυπες ανεξάρτητες συσκευές ικανές να λειτουργούν ταυτόχρονα, τότε ένα σύστημα πέντε συσκευών μπορεί να εκτελέσει τις ίδιες χιλιάδες λειτουργίες όχι σε χίλιες, αλλά σε διακόσιες μονάδες χρόνου. Ομοίως, ένα σύστημα Ν συσκευών θα εκτελεί την ίδια εργασία σε 1000/N μονάδες χρόνου. Παρόμοιες αναλογίες μπορούν να βρεθούν στη ζωή: αν ένας στρατιώτης σκάψει έναν κήπο σε 10 ώρες, τότε μια ομάδα πενήντα στρατιωτών με τις ίδιες ικανότητες, που εργάζονται ταυτόχρονα, θα αντιμετωπίσει την ίδια εργασία σε 12 λεπτά (παράλληλη επεξεργασία δεδομένων) και ακόμη με τραγούδια (παράλληλη επεξεργασία εντολών).

    Επεξεργασία μεταφορέα . Τι χρειάζεται για να προσθέσουμε δύο πραγματικούς αριθμούς που αντιπροσωπεύονται σε μορφή κινητής υποδιαστολής; Πολλές μικρές λειτουργίες, όπως σύγκριση παραγγελιών, ευθυγράμμιση παραγγελιών, προσθήκη μάντισσας, κανονικοποίηση κ.λπ. Οι επεξεργαστές των πρώτων υπολογιστών εκτέλεσαν όλες αυτές τις «μικρο-λειτουργίες» για κάθε ζεύγος ορισμάτων, το ένα μετά το άλλο, μέχρι να φτάσουν στο τελικό αποτέλεσμα και μόνο τότε προχώρησαν στην επεξεργασία του επόμενου ζεύγους όρων. Η ιδέα της επεξεργασίας αγωγών είναι να απομονωθούν μεμονωμένα στάδια εκτέλεσης μιας γενικής λειτουργίας και κάθε στάδιο, έχοντας ολοκληρώσει την εργασία του, θα περνούσε το αποτέλεσμα στο επόμενο, ενώ ταυτόχρονα θα λάμβανε ένα νέο τμήμα δεδομένων εισόδου. Παίρνουμε ένα προφανές κέρδος στην ταχύτητα επεξεργασίας συνδυάζοντας προηγουμένως διαχωρισμένες λειτουργίες.

    Υπερκλιμάκωση.Όπως και στο προηγούμενο παράδειγμα, μόνο κατά την κατασκευή ενός αγωγού, χρησιμοποιούνται πολλές υλοποιήσεις υλικού και λογισμικού λειτουργικών συσκευών, για παράδειγμα, δύο ή τρεις ALU, τρεις ή τέσσερις συσκευές δειγματοληψίας.

    Υπερπληθωρισμός Σπείρωμα. Μια πολλά υποσχόμενη κατεύθυνση στην ανάπτυξη σύγχρονων μικροεπεξεργαστών που βασίζονται στην αρχιτεκτονική πολλαπλών νημάτων. Το κύριο εμπόδιο στην αύξηση της παραγωγικότητας μέσω της αύξησης του αριθμού των λειτουργικών συσκευών είναι η οργάνωση της αποτελεσματικής φόρτωσης αυτών των συσκευών. Εάν οι σημερινοί κώδικες προγραμμάτων δεν μπορούν να φορτώσουν όλες τις λειτουργικές συσκευές με εργασία, τότε μπορείτε να επιτρέψετε στον επεξεργαστή να εκτελέσει περισσότερες από μία εργασίες (νήμα), έτσι ώστε πρόσθετα νήματα να φορτώνουν όλες τις λειτουργικές μονάδες (όπως το multitasking).

    Πολυπύρηνος. Είναι δυνατόν, φυσικά, να εφαρμοστεί η πολυεπεξεργασία σε επίπεδο chip, δηλ. τοποθετήστε πολλούς επεξεργαστές σε ένα τσιπ (Power 4). Αλλά αν πάρουμε έναν μικροεπεξεργαστή μαζί με τη μνήμη ως πυρήνες συστήματος, τότε αρκετοί τέτοιοι πυρήνες σε ένα τσιπ θα δημιουργήσουν μια δομή πολλαπλών πυρήνων. Σε αυτή την περίπτωση, λειτουργίες (για παράδειγμα, διεπαφές συστημάτων δικτύου και τηλεπικοινωνιών) ενσωματώνονται στο τσιπ, για το οποίο συνήθως χρησιμοποιούνται chipsets (Motorola MPC8260, επεξεργαστές Power 4).

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

    1. Διανυσματικοί μεταφορικοί υπολογιστές. Οι λειτουργικές συσκευές αγωγών και το διανυσματικό σύνολο οδηγιών είναι δύο χαρακτηριστικά τέτοιων μηχανών. Σε αντίθεση με την παραδοσιακή προσέγγιση, οι διανυσματικές εντολές λειτουργούν σε ολόκληρες συστοιχίες ανεξάρτητων δεδομένων, γεγονός που επιτρέπει την αποτελεσματική φόρτωση των διαθέσιμων αγωγών, π.χ. Μια εντολή όπως A=B+C μπορεί να σημαίνει την προσθήκη δύο πινάκων, όχι δύο αριθμών. Ένας τυπικός εκπρόσωπος αυτής της κατεύθυνσης είναι η οικογένεια υπολογιστών διανυσματικών αγωγών CRAY, η οποία περιλαμβάνει, για παράδειγμα, τους CRAY EL, CRAY J90, CRAY T90 (τον Μάρτιο του 2000, η ​​αμερικανική εταιρεία TERA αγόρασε το τμήμα CRAY από τη Silicon Graphics, Inc.) .

    2. Μαζικά παράλληλοι υπολογιστέςμε κατανεμημένη μνήμη. Η ιδέα της κατασκευής υπολογιστών αυτής της κατηγορίας είναι ασήμαντη: ας πάρουμε σειριακούς μικροεπεξεργαστές, ας παρέχουμε στον καθένα τη δική του τοπική μνήμη, ας τη συνδέσουμε μέσω κάποιου μέσου επικοινωνίας - αυτό είναι όλο. Αυτή η αρχιτεκτονική έχει πολλά πλεονεκτήματα: εάν απαιτείται υψηλή απόδοση, τότε μπορούν να προστεθούν περισσότεροι επεξεργαστές εάν τα οικονομικά είναι περιορισμένα ή η απαιτούμενη υπολογιστική ισχύς είναι γνωστή εκ των προτέρων, τότε είναι εύκολο να επιλέξετε τη βέλτιστη διαμόρφωση κ.λπ.

    Ωστόσο, υπάρχει επίσης ένα καθοριστικό «μείον» που μειώνει πολλά από τα «συν» σε τίποτα. Γεγονός είναι ότι είναι ανεξάρτητο, αλλά μάλλον συνδυασμός των τριών προηγούμενων. Θα σχηματίσουμε έναν υπολογιστικό κόμβο από αρκετούς επεξεργαστές (παραδοσιακούς ή διανυσματικούς αγωγούς) και την κοινή τους μνήμη. Εάν η υπολογιστική ισχύς που αποκτάται δεν είναι αρκετή, τότε θα συνδυάσουμε αρκετούς κόμβους με κανάλια υψηλής ταχύτητας. Αυτό το είδος αρχιτεκτονικής ονομάζεται σύμπλεγμα SV1, HP Υπόδειγμα,Ήλιος StarFire, N.E.C. SX-5, τελευταία μοντέλα IBM SP2

    3. Παράλληλουπολογιστές κοινής μνήμης. Όλη η μνήμη RAM τέτοιων υπολογιστών μοιράζεται από πολλούς ίδιους επεξεργαστές. Αυτό αφαιρεί τα προβλήματα της προηγούμενης κατηγορίας, αλλά προσθέτει νέα - ο αριθμός των επεξεργαστών με πρόσβαση στην κοινόχρηστη μνήμη δεν μπορεί να γίνει μεγάλος για καθαρά τεχνικούς λόγους. Αυτή η περιοχή περιλαμβάνει πολλούς σύγχρονους υπολογιστές SMP πολλαπλών επεξεργαστών ή, για παράδειγμα, μεμονωμένους κόμβους υπολογιστών HP Υπόδειγμακαι Κυρ StarFire.

    4. Συστήματα συμπλέγματος.Η τελευταία σκηνοθεσία, αυστηρά, δεν είναι ανεξάρτητη, αλλά μάλλον συνδυασμός των τριών προηγούμενων. Θα σχηματίσουμε έναν υπολογιστικό κόμβο από αρκετούς επεξεργαστές (παραδοσιακούς ή διανυσματικούς αγωγούς) και την κοινή τους μνήμη. Εάν η υπολογιστική ισχύς που αποκτάται δεν είναι αρκετή, τότε θα συνδυάσουμε αρκετούς κόμβους με κανάλια υψηλής ταχύτητας. Αυτό το είδος αρχιτεκτονικής ονομάζεται σύμπλεγμα, και τα CRAY είναι χτισμένα σε αυτήν την αρχή SV1, HP Υπόδειγμα,Ήλιος StarFire, N.E.C. SX-5, τελευταία μοντέλα IBM SP2και άλλοι. Αυτή η κατεύθυνση είναι αυτή που είναι η πιο ελπιδοφόρα για το σχεδιασμό υπολογιστών με δείκτες απόδοσης ρεκόρ.



    Συνιστούμε να διαβάσετε

    Μπλουζα