Shared Memory Multiprocessors. Πολυεπεξεργαστές Μοιραζόµενης
|
|
- Ἀριστείδης Ρόκας
- 7 χρόνια πριν
- Προβολές:
Transcript
1 Shared Memory Multiprocessors Πολυεπεξεργαστές Μοιραζόµενης Μνήµης 1
2 Shared Memory Multiprocessors Ηκύρια µνήµη προσπελαύνεται µε τον ίδιο τρόπο και ταχύτητα από όλους τους επεξεργαστές Κάθε επεξεργαστής έχει το δικό του χώρο φυσικών διευθύνσεων κρυφής µνήµης (cache memory) Έχουν κυριαρχήσει στην αγορά συστηµάτων εξυπηρετητών (servers) Είναι ιδιαίτερα πλεονεκτικοί ως throughput servers και για παράλληλα προγράµµατα Υποστηρίζουν µηχανισµούς προσπέλασης δεδοµένων φαινοµενικά όµοιους µε τα µονο-επεξεργαστικά συστήµατα (reads and writes) 2
3 Τρόποι επέκτασης του συστήµατος µνήµης P 1 P n Switch P 1 P n (Interleaved) First-level $ $ $ Bus (Interleaved) Main memory Mem I/O devices (a) Shared cache (b) Bus-based shared memory P 1 P n P 1 P n $ $ $ $ Mem Mem Interconnection network Mem Mem Interconnection network (c) Dancehall (d) Distributed-memory 3
4 Κρυφή µνήµη Ο ρόλος της κρυφής µνήµης: Μειώνει το µέσο χρόνο πρόσβασης των δεδοµένων Μειώνει τη ζήτηση εύρους ζώνης στο µοιραζόµενο µέσο διασύνδεσης 4
5 Συνάφεια Κρυφής µνήµης Αλλά οι τοπικές µονάδες κρυφής µνήµης για κάθε επεξεργαστή δηµιουργούν πρόβληµα: Αντίγραφα µιας µεταβλητής µπορεί να υπάρχουν σε πολλές µονάδες κρυφής µνήµης Μια λειτουργία εγγραφής από κάποιον επεξεργαστή µπορεί να µην είναι ορατή από τους άλλους Θα εξακολουθούν να προσπελαύνουν την παλιά τιµή που υπάρχει στις τοπικές µονάδες κρυφής µνήµης Πρόβληµα Συνάφειας Κρυφής Μνήµης (Cache Coherence) Χρειάζεται να διασφαλιστεί η ορατότητα των τελευταίων αλλαγών 5
6 Στίγµα: Κεντρική Μνήµη µε διάδροµο Μοιραζόµενη Κρυφή Μνήµη +Low-latency sharing and prefetching across processors +Μοιραζόµενα σύνολα εργασίας + εν υπάρχει πρόβληµα συνάφειας - Ανάγκη µεγάλου εύρους ζώνης - Αυξηµένη καθυστέρηση είτε σε cache hit είτε σε cache miss λόγω του διαδρόµου και του µεγέθους της κρυφής µνήµης : Συνέδεε ζεύγη επεξεργαστών σε µια πλακέτα (Encore, Sequent) Σήµερα: Για πολυεπεξεργαστές στο ίδιο chip (για συστήµατα κόµβων µικρής κλίµακας) Συνέπεια Όχι πλέον δηµοφιλής λύση: Όλα είναι το ίδιο µακριά 6
7 Στίγµα: Κεντρική Μνήµη µε διάδροµο Κατανεµηµένη Μνήµη Πιο δηµοφιλής τεχνική για κατασκευή επεκτάσιµων συστηµάτων (θα συζητηθεί στη συνέχεια) 7
8 Περίγραµµα Παρουσίασης Συνάφεια (Coherence) και Συνέπεια (Consistency) Μνήµης Πρωτόκολλο Συνάφειας Κρυφής Μνήµης µε Κατασκοπεία Ποσοτική αποτίµηση Πρωτοκόλλων Συνάφειας Κρυφής Μνήµης Συγχρονισµός 8
9 Σύστηµα µε Συνάφεια µνήµης: Γενική Ιδέα Η λειτουργία ανάγνωσης µιας θέσης µνήµης πρέπει να επιστρέφει την τιµή που γράφτηκε τελευταία (από οποιαδήποτε διεργασία) Εύκολο σε µονο-επεξεργαστικά συστήµατα Θα θέλαµε να ισχύει το ίδιο όταν οι διεργασίες τρέχουν σε διαφορετικούς επεξεργαστές Αλλά το πρόβληµα της συνάφειας µνήµης είναι πολύ πιο δύσκολο σε συστήµατα πολυεπεξεργαστών 9
10 Παράδειγµα Προβλήµατος Συνάφειας Κρυφής Μνήµης P 1 P 2 P 3 u =? u =? u = 7 $ 4 $ 5 $ 3 u:5 u:5 1 I/O devices u:5 2 Memory Οι επεξεργαστές βλέπουν διαφορετική τιµή για τη µεταβλητή uµετά τη λειτουργία 3 Με τις write back caches, η τιµή που γράφεται πίσω στη µνήµη εξαρτάται από το ποια cache και πότε διώχνει ή αντιγράφει δεδοµένα Απαράδεκτο, αλλά συµβαίνει συχνά! 10
11 Παράδειγµα Προβλήµατος Συνάφειας Κρυφής Μνήµης Παρόµοια προβλήµατα αντιµετωπίζουµε ακόµη και σε µονοεπεξεργαστικά συστήµατα, όπου πρόσβαση στη µνήµη έχουν Οι λειτουργίες εισόδου / εξόδου (I/O operations) Οι συσκευές άµεσης προσπέλασης της µνήµης (DMA devices) 11
12 Προβλήµατα µε τη γενική ιδέα Υπενθύµιση: Η τιµή που επιστρέφεται από µια λειτουργία ανάγνωσης πρέπει να είναι η τελευταία που γράφτηκε Αλλά η «τελευταία» δεν έχει οριστεί επαρκώς Ακόµη και στην περίπτωση σειριακού προγράµµατος, η τελευταία ορίζεται σύµφωνα µε τη σειρά που επιβάλλεται από το πρόγραµµα, όχι από το χρόνο Στην περίπτωση παράλληλου προγράµµατος, η σειρά του προγράµµατος ορίζεται εντός της διεργασίας Πρέπει να οριστεί και µια σειρά που να αφορά όλες τις διεργασίες 12
13 Εξειδίκευση της Γενικής Ιδέας Έστω ότι υπάρχει µία µόνο µοιραζόµενη µνήµη και καθόλου µονάδες κρυφής µνήµης Κάθε λειτουργία ανάγνωσης και εγγραφής σε µια θέση µνήµης προσπελαύνει την ίδια φυσική θέση Η µνήµη επιβάλλει µια καθολική σειρά στις λειτουργίες σε αυτή τη θέση Οι λειτουργίες στη θέση αυτή από έναν επεξεργαστή γίνονται µε τη σειρά που επιβάλλει το πρόγραµµα Η σειρά των λειτουργιών από διαφορετικούς επεξεργαστές είναι µια παρεµβολή που διατηρεί τις σειρές που επιβάλλονται από τα ανεξάρτητα προγράµµατα «Τελευταία» τώρα σηµαίνει την πιο πρόσφατη σε µια υποθετική ακολουθιακή σειρά που ικανοποιεί τις παραπάνω ιδιότητες 13
14 Εξειδίκευση της Γενικής Ιδέας Για να είναι συνεπής η ακολουθιακή σειρά, πρέπει οι επεξεργαστές να βλέπουν τις εγγραφές στην ίδια θέση µνήµης µε την ίδια σειρά Η καθολική σειρά δεν κατασκευάζεται ποτέ σε πραγµατικά συστήµατα Αλλά τα προγράµµατα πρέπει να συµπεριφέρονται σαν να υπήρχε αυτή η καθολική σειρά 14
15 Ορισµός της Συνάφειας Μνήµης (Coherence) Αποτελέσµατα ενός προγράµµατος: Οι τιµές που επιστρέφονται από τις λειτουργίες ανάγνωσης Ένα σύστηµα µνήµης είναι συναφές αν τα αποτελέσµατα κάθε εκτέλεσης ενός προγράµµατος είναι τέτοια ώστε σε κάθε θέση µπορούµε να κατασκευάσουµε µια υποθετική ακολουθιακή σειρά όλων των λειτουργιών στη συγκεκριµένη θέση, που είναι συνεπής µε τα αποτελέσµατα της εκτέλεσης και στην οποία: 1. Οι λειτουργίες που καλούνται από κάθε διεργασία συµβαίνουν µε τη σειρά στην οποία κλήθηκαν από τη διεργασία αυτή 2. Η τιµή που επιστρέφεται από µια λειτουργία ανάγνωσης είναι η τιµή της τελευταίας εγγραφής στη συγκεκριµένη θέση σύµφωνα µε την καθολική σειρά 15
16 Ορισµός της Συνάφειας Μνήµης (Coherence) Απαραίτητα χαρακτηριστικά: ιάδοση εγγραφών: Η τιµή που γράφεται πρέπει να γίνεται αµέσως ορατή στους άλλους Σειριοποίηση εγγραφών: Οι εγγραφές σε µια θέση φαίνονται στην ίδια σειρά για όλους Αν εγώ βλέπω στην εγγραφή w1 πριν από την w2, δεν πρέπει εσύ να βλέπεις την w2 πριν από την w1 εν χρειάζεται όµοια σειριοποίηση των λειτουργιών ανάγνωσης, αφού οι λειτουργίες ανάγνωσης δεν είναι ορατές από τους υπόλοιπους 16
17 Συνάφεια Κρυφής Μνήµης µε τη χρήση ιαδρόµου Στηρίζεται σε δυο βασικά χαρακτηριστικά των µονο-επεξεργαστικών συστηµάτων 1. Bus transactions 2. ιάγραµµα µετάβασης καταστάσεων στην κρυφή µνήµη 17
18 Συνάφεια Κρυφής Μνήµης µε τη χρήση ιαδρόµου 1. Bus transaction σε έναν επεξεργαστή: Τρεις φάσεις: διαιτησία, εντολή/διεύθυνση, µεταφορά δεδοµένων Όλες οι συσκευές παρακολουθούν τις διευθύνσεις, µία είναι υπεύθυνη 2. Καταστάσεις κρυφής µνήµης για έναν επεξεργαστή: Ουσιαστικά, κάθε block είναι µια µηχανή πεπερασµένων καταστάσεων Write-through, write no-allocate έχουν δύο καταστάσεις: έγκυρη, άκυρη Writeback caches έχουν µία επιπλέον κατάσταση: τροποποιηµένη 18
19 Συνάφεια Κρυφής Μνήµης µε τη χρήση ιαδρόµου Οι πολυεπεξεργαστές επεκτείνουν και τα δύο αυτά χαρακτηριστικά για να υλοποιήσουν τη συνάφεια κρυφής µνήµης 19
20 Κατασκοπευτική Συνάφεια Μνήµης Βασική Ιδέα: Οι transactions στο διάδροµο είναι ορατές σε όλους τους επεξεργαστές Οι επεξεργαστές ή οι αντιπρόσωποί τους µπορούν να κατασκοπεύουν το διάδροµο και να παίρνουν τα ανάλογα µέτρα (π.χ. Αλλαγή κατάστασης) 20
21 Κατασκοπευτική Συνάφεια Μνήµης Υλοποίηση Πρωτοκόλλου 1. Ο ελεγκτής της κρυφής µνήµης τώρα δέχεται είσοδο από δύο πλευρές: Αιτήσεις από τον επεξεργαστή Αιτήσεις / αποκρίσεις διαδρόµου από τον κατάσκοπο 2. Σε κάθε περίπτωση, αναλαµβάνει ή όχι δράση Ενηµερώνει µια κατάσταση αποκρίνεται µε δεδοµένα παράγει νέες bus transactions 3. Η συνάφεια βασίζεται στο µέγεθος του block της κρυφής µνήµης Όπως η κατανοµή στην κρυφή µνήµη και η µεταφορά από και προς την κρυφή µνήµη 21
22 Συνάφεια µε Write-through Caches P 1 Bus snoop P n $ $ Mem I/O devices Cache-memory transaction Βασικές επεκτάσεις από τους µονο-επεξεργαστές: 1. κατασκοπεία 2. ακύρωση / ενηµέρωση κρυφής µνήµης εν υπάρχουν νέες καταστάσεις ή bus transactions στην περίπτωση αυτή Πρωτόκολλα που στηρίζονται στην ακύρωση ή στην ενηµέρωση 22
23 Συνάφεια µε Write-through Caches P 1 Bus snoop P n $ $ Mem I/O devices Cache-memory transaction ιάδοση εγγραφών: Ακόµη και στην περίπτωση ακύρωσης, οι επόµενες αναγνώσεις θα δουν την καινούρια τιµή Η ακύρωση προκαλεί miss στην επόµενη προσπέλαση και συνεπώς ενηµέρωση της µνήµης 23
24 Write-through ιάγραµµα Μετάβασης Καταστάσεων PrRd/ PrWr/BusWr V PrRd/BusRd BusWr/ I PrWr/BusWr Processor-initiated transactions Bus-snooper-initiated transactions Σε κάθε κρυφή µνήµη υπάρχουν δύο καταστάσεις ανά block, όπως στους µονο-επεξεργαστές Hardware bits κατάστασης συνδέονται µόνο µε τα blocks που υπάρχουν στη µνήµη Τα υπόλοιπα blocks θεωρούνται σε άκυρη κατάσταση στη συγκεκριµένη κρυφή µνήµη 24
25 Write-through ιάγραµµα Μετάβασης Καταστάσεων PrRd/ PrWr/BusWr V PrRd/BusRd BusWr/ I PrWr/BusWr Processor-initiated transactions Bus-snooper-initiated transactions Οι εγγραφές ακυρώνουν όλα τα άλλα αντίγραφα σε κρυφές µνήµες (όχι τοπική αλλαγή κατάστασης) Μπορούν ταυτόχρονα να υπάρχουν πολλοί αναγνώστες ενός block, αλλά µια εγγραφή τους ακυρώνει 25
26 Είναι Συναφές; Κατασκευάζεται καθολική σειρά που ικανοποιεί τη τη σειρά του προγράµµατος και τη σειριοποίηση των εγγραφών; 1. Υποθέτουµε ατοµικές bus transactions και λειτουργίες µνήµης 2. Όλες οι εγγραφές περνούν από το διάδροµο Οι εγγραφές σειριοποιούνται σύµφωνα µε τη σειρά που εµφανίζονται στο διάδροµο Οι ακυρώσεις εφαρµόζονται στις κρυφές µνήµες µε τη σειρά που καθορίζει ο διάδροµος Πώς παρεµβάλλουµε τις αναγνώσεις στη σειρά αυτή; 26
27 Σειριοποίηση αναγνώσεων Read misses: εµφανίζονται στο διάδροµο και βλέπουν την τελευταία εγγραφή σύµφωνα µε τη σειρά που καθορίζει ο διάδροµος Read hits: δεν εµφανίζονται στο διάδροµο Αλλά η τιµή που διαβάζεται τοποθετήθηκε στην κρυφή µνήµη από Την πιο πρόσφατη εγγραφή από αυτόν τον επεξεργαστή, ή Την πιο πρόσφατη read miss από αυτόν τον επεξεργαστή Και οι δύο αυτές transactions εµφανίζονται στο διάδροµο Άρα οι reads hits βλέπουν τις τιµές µε τη σειρά που καθορίζει ο διάδροµος 27
28 Καθορισµός Σειράς Γενικά Μια λειτουργία µνήµης Μ2 ακολουθεί µια λειτουργία µνήµης Μ1 αν οι λειτουργίες καλούνται από τον ίδιο επεξεργαστή και η Μ2 έπεται της Μ1 στη σειρά του προγράµµατος. Μια ανάγνωση έπεται µιας εγγραφής W αν ηανάγνωση παράγει bus transaction που έπεται του bus transaction της W. Μια εγγραφή έπεται µια ανάγνωσης ή εγγραφής M αν η M παράγει bus xaction και η xaction για την εγγραφή έπεται αυτήν της M. Μια εγγραφή έπεται µιας ανάγνωσης αν η εγγραφή δεν παράγει bus xaction και δεν σειριοποιείται σε σχέση µε τη εγγραφή από µια άλλη bus xaction. P 0 : R R R W R R P 1 : R R R R R W P 2 : R R R R R R 28
29 Καθορισµός Σειράς Γενικά Οι εγγραφές καθορίζουν µια µερική σειριοποίηση εν περιορίζει τη σειριοποίηση των εγγραφών, αν και ο διάδροµος σειριοποιεί επίσης κάποιες read misses Κάθε διάταξη των αναγνώσεων µεταξύ των εγγραφών είναι ικανοποιητική, αρκεί να διατηρεί τη σειρά που ορίζεται από το πρόγραµµα P 0 : R R R W R R P 1 : R R R R R W P 2 : R R R R R R 29
30 Πρόβληµα µε Write-Through Απαίτηση υψηλού εύρους ζώνης Οι Write-back κρύβουν τις περισσότερες εγγραφές από το διάδροµο ως cache hits 30
31 Συνέπεια Μνήµης Οι εγγραφές σε µια θέση είναι ορατές από όλους µε την ίδια σειρά Αλλά πότε γίνεται ορατή µια εγγραφή; Πώς να καθορίσουµε τη σχετική σειριοποίηση µια εγγραφής και µιας ανάγνωσης από διαφορετικούς επεξεργαστές; Με συγχρονισµό των γεγονότων, χρησιµοποιώντας περισσότερες από µια θέσεις P 1 P 2 /*Υποθέστε ότι η αρχική τιµή της µεταβλητής Α είναι 0*/ A = 1; while (flag == 0); /*spin idly*/ flag = 1; print A; 31
32 Συνέπεια Μνήµης Η συνάφεια δεν εγγυάται τη γενική ιδέα Μερικές φορές περιµένουµε να διατηρείται η σειρά των προσπελάσεων σε διαφορετικές θέσεις µνήµης από έναν δεδοµένο επεξεργαστή Η έννοια της συνάφειας δεν βοηθάει: αναφέρεται σε µία µόνο θέση 32
33 Παράδειγµα P 1 P 2 /*Assume initial values of A and B are 0*/ (1a) A = 1; (2a) print B; (1b) B = 2; (2b) print A; Όποια και αν είναι η γενική ιδέα, χρειαζόµαστε ένα µοντέλο σειριοποίησης Για διαφορετικές θέσεις µνήµης Ώστε οι προγραµµατιστές να καθορίζουν τα δυνατά αποτελέσµατα µε βάση τη λογική Χρειαζόµαστε ένα µοντέλο συνέπειας της µνήµης 33
34 Μοντέλο Συνέπειας Μνήµης Περιορίζει τις πιθανές διατάξεις µε τις οποίες οι λειτουργίες µνήµης (από κάθε διεργασία) µπορούν να εµφανιστούν η µία σε σχέση µε την άλλη Χωρίς αυτήν, δεν µπορούµε να πούµε τίποτα για το αποτέλεσµα της εκτέλεσης ενός προγράµµατος SAS Συνέπειες για τους προγραµµατιστές και τους σχεδιαστές συστήµατος: Ο προγραµµατιστής µε βάση τη λογική αποφασίζει για την ορθότητα και τα πιθανά αποτελέσµατα Ο σχεδιαστής συστήµατος πρέπει να περιορίσει πόσο µπορούν να αναδιατάσσονται οι προσπελάσεις από τον compiler ή το hardware 34
35 Ακολουθιακή Συνέπεια Processors issuing memory references as per program order P 1 P 2 P n The switch is randomly set after each memory reference Memory Σαν να µην υπήρχαν κρυφές µνήµες, µία µόνο µνήµη Καθολική διάταξη επιτυγχάνεται παρεµβάλλοντας µεταξύ τους τις προσπελάσεις από διαφορετικές διεργασίες ιατηρεί τη διάταξη του προγράµµατος, και οι λειτουργίες της µνήµης, από όλες τις διεργασίες, εµφανίζονται να [καλούνται, εκτελούνται, ολοκληρώνονται] ατοµικά σε σχέση µε τις άλλες ιατηρείται η διαίσθηση του προγραµµατιστή 35
36 Ακολουθιακή Συνέπεια Processors issuing memory references as per program order P 1 P 2 P n The switch is randomly set after each memory reference Memory A multiprocessor is sequentially consistent if the result of any execution is the same as if the operations of all the processors were executed in some sequential order, and the operations of each individual processor appear in this sequence in the order specified by its program. [Lamport, 1979] 36
37 Τι είναι η διάταξη του προγράµµατος; ιαισθητικά, η σειρά µε την οποία εµφανίζονται οι λειτουργίες στον πηγαίο κώδικα Όχι όµως ίδια µε τη σειρά που εµφανίζεται στο hardware από τον compiler Άρα, τι είναι ηδιάταξη του προγράµµατος; Εξαρτάται από το ποιο επίπεδο και ποιος κάνει τη συσχέτιση Υποθέτουµε τη σειρά, όπως την βλέπει ο προγραµµατιστής 37
38 Παράδειγµα Ακολουθιακής Συνέπειας Αυτό που µετράει είναι η σειρά που φαίνεται ότι εκτελούνται οι εντολές, όχι που πραγµατικά εκτελούνται P1 P2 /*Υποθέστε ότι οι αρχικές τιµές των Α,Β είναι 0*/ (1a) A = 1; (2a) print B; (1b) B = 2; (2b) print A; Πιθανά αποτελέσµατα για (A,B): (0,0), (1,0), (1,2); Αδύνατον υποθέτοντας ακολουθιακή συνέπεια: (0,2) Γνωρίζουµε ότι 1a->1b και 2a->2b από τη διάταξη του προγράµµατος A = 0 προϋποθέτει 2b->1a, άρα 2a->1b B = 2 προϋποθέτει 1b->2a, που οδηγεί σε άτοπο 38
39 Υλοποίηση Ακολουθιακή Συνέπειας ύο είδη απαιτήσεων: Σειρά του προγράµµατος Οι λειτουργίες της µνήµης που καλούνται από µια διεργασία πρέπει να γίνονται ορατές (στους άλλους, αλλά και στην ίδια) µε τη σειρά που υπαγορεύει το πρόγραµµα Ατοµικότητα Στην καθολική σειρά, µια λειτουργία µνήµης πρέπει να φαίνεται ότι ολοκληρώνεται ως προς τις άλλες διεργασίες πριν κληθεί η επόµενη 39
40 Ατοµικότητα εγγραφών Ατοµικότητα εγγραφών: Η θέση στην καθολική σειρά στην οποία µια εγγραφή εµφανίζεται πρέπει να είναι η ίδια για όλες τις διεργασίες Τίποτα από αυτά που κάνει µια διεργασία αφού έχει δει την καινούρια τιµή που παράχθηκε από µια εγγραφή W δεν πρέπει να γίνεται ορατό στις άλλες διεργασίες πριν δουν την W Άρα, επεκτείνεται η σειριοποίηση των εγγραφών στις εγγραφές από πολλαπλές διεργασίες P 1 P 2 P 3 A=1; while (A==0); B=1; while (B==0); print A; 40
41 Ορισµοί Η σειρά του προγράµµατος κάθε διεργασίας επιβάλλει µια µερική διάταξη στο σύνολο των λειτουργιών Παρεµβάλλοντας µεταξύ τους αυτές τις µερικές διατάξεις, προκύπτει µια καθολική σειρά για όλες τις διεργασίες Περισσότερες από µία καθολικές σειρές µπορεί να είναι ακολουθιακά συνεπείς 41
42 Ορισµοί Ακολουθιακά συνεπής Εκτέλεση: Η εκτέλεση ενός προγράµµατος είναι ακολουθιακά συνεπής αν τα αποτελέσµατα που παράγονται είναι όµοια µε αυτά που θα µπορούσα να παραχθούν από µία πιθανή καθολική σειρά Ακολουθιακά συνεπές Σύστηµα: Ένα σύστηµα είναι ακολουθιακά συνεπές αν κάθε πιθανή εκτέλεση σε αυτό είναι µια ακολουθιακά συνεπής εκτέλεση 42
43 Ικανές Συνθήκες για Ακολουθιακή Συνέπεια Κάθε διεργασία καλεί λειτουργίες της µνήµης µε τη σειρά του προγράµµατος Αφού κληθεί µια λειτουργία εγγραφή, η καλούσα διεργασία περιµένει να ολοκληρωθεί η εγγραφή πριν καλέσει την επόµενη λειτουργία Αφού κληθεί µια λειτουργία ανάγνωσης, ηκαλούσα διεργασία περιµένει να ολοκληρωθεί η ανάγνωση, καθώς και η εγγραφή της οποίας η τιµή επιστρέφεται, πριν καλέσει την επόµενη λειτουργία (παρέχει ατοµικότητα των εγγραφών) Ικανές, όχι αναγκαίες συνθήκες Οι compilers δεν πρέπει να αναδιατάσσουν το πρόγραµµα για να έχουµε ακολουθιακή συνέπεια, αλλά το κάνουν! Ακόµα και αν καλούνται µε τη σειρά, το hardware µπορεί να τις αναδιατάσσει για καλύτερη απόδοση Οι ικανές συνθήκες είναι πολύ περιοριστικές για να επιτευχθεί υψηλή απόδοση 43
44 Πώς χειριζόµαστε τη σειριοποίηση Υποθέστε, προς το παρόν, ότι ο compiler δεν αναδιατάσσει Το hardware χρειάζεται µηχανισµούς για να: Ανιχνεύσει την ολοκλήρωση των εγγραφών Εξασφαλίσει την ατοµικότητα των εγγραφών Για όλα τα πρωτόκολλα και τις υλοποιήσεις θα δούµε: Πώς ικανοποιούν τη συνάφεια, ιδιαίτερα τη σειριοποίηση των εγγραφών Πώς ικανοποιούν τις ικανές συνθήκες για ακολουθιακή συνέπεια Πώς εξασφαλίζουν την ακολουθιακή συνέπεια, όχι µέσω των ικανών συνθηκών Θα δούµε ότι ο κεντρικός διάδροµος διασύνδεσης τα κάνει ευκολότερα 44
45 Ακολουθιακή Συνέπεια σε Write-Through Παράδειγµα Παρέχει ακολουθιακή συνέπεια, όχι µόνο συνάφεια Επέκταση των επιχειρηµάτων που χρησιµοποιούνται για τη συνάφεια Οι εγγραφές και οι read misses σε όλες τις θέσεις σειριοποιούνται πάνω στο διάδροµο Αν µια ανάγνωση παίρνει τιµή από µια εγγραφή W, η W σίγουρα έχει ολοκληρωθεί Αφού προκάλεσε bus transaction Όταν η εγγραφή W πραγµατοποιείται ως προς τους άλλους επεξεργαστές, όλες οι προηγούµενες εγγραφές έχουν ολοκληρωθεί σύµφωνα µε τη διάταξη που επιβάλλει ο διάδροµος 45
46 Σχεδίαση για Κατασκοπευτικά Πρωτόκολλα εν χρειάζεται να αλλάξουµε επεξεργαστή, κύρια µνήµη, κρυφή µνήµη Επεκτείνουµε τον ελεγκτή της κρυφής µνήµης και εκµεταλλευόµαστε το διάδροµο (παρέχει σειριοποίηση) Επικεντρωνόµαστε στα πρωτόκολλα για write-back caches Η τροποποιηµένη κατάσταση δείχνει αποκλειστική ιδιοκτησία Αποκλειστικότητα: Η µόνη κρυφή µνήµη µε έγκυρο αντίγραφο (µπορεί να έχει και η κύρια µνήµη) Σχεδίαση Ιδιοκτήτης: υπεύθυνος να παρέχει το block αν ζητηθεί Πρωτόκολλα µε ακύρωση ή µε ενηµέρωση Ορισµός καταστάσεων 46
47 Πρωτόκολλα µε ακύρωση Αποκλειστικότητα σηµαίνει ότι µπορεί να τροποποιεί χωρίς να ειδοποιεί κανέναν ηλ. χωρίς bus transaction Πρέπει πρώτα να αποκτήσει την αποκλειστικότητα του block πριν γράψει σε αυτό Ακόµη και αν βρίσκεται σε έγκυρη κατάσταση, χρειάζεται transaction, άρα έχουµε write miss Αποθήκευση σε µη τροποποιηµένα δεδοµένα προκαλεί µια readexclusive bus transaction Ειδοποιεί τους άλλους για την επερχόµενη εγγραφή, αποκτά την αποκλειστική ιδιοκτησία Μία µόνο RdX µπορεί να επιτύχει τη φορά για ένα block: σειριοποιούνται στο διάδροµο 47
48 Πρωτόκολλα µεενηµέρωση Μια λειτουργία εγγραφής ενηµερώνει τις τιµές στις άλλες κρυφές µνήµες Πλεονεκτήµατα Μειωµένη καθυστέρηση για τους άλλους επεξεργαστές στην επόµενη προσπέλαση Μία µόνο bus transaction ενηµερώνει όλες τις κρυφές µνήµες Επίσης, µόνο η συγκεκριµένη λέξη µεταφέρεται, όχι όλο το block Μειονεκτήµατα Πολλαπλές εγγραφές από τον ίδιο επεξεργαστή προκαλούν πολλές ενηµερώσεις 48
49 Ακύρωση - Ενηµέρωση Ένα block, που γράφεται από έναν επεξεργαστή, διαβάζεται από άλλους πριν ξαναγραφεί; Ακύρωση: Ναι Οι αναγνώστες θα έχουν miss Όχι πολλές εγγραφές χωρίς επιπλέον κίνηση Και εκκαθάριση των αντιγράφων που δεν θα ξαναχρησιµοποιηθούν Ενηµέρωση: Ναι Οι αναγνώστες δεν θα χάσουν αν είχαν αντίγραφα Με µία µόνο bus transaction ενηµερώνονται όλα τα αντίγραφα Όχι Πολλές άχρηστες ενηµερώσεις, ακόµα και σε νεκρά αντίγραφα Πρέπει να εξετάσουµε τη συµπεριφορά των προγραµµάτων και την πολυπλοκότητα του hardware 49
50 MSI Writeback Πρωτόκολλο µε Ακύρωση Καταστάσεις: Άκυρη - Invalid (I) Μοιραζόµενη - Shared (S): (για ένα ή περισσότερους) Τροποποιηµένη - Modified (M): (µόνο ένας) Γεγονότα επεξεργαστών: PrRd (ανάγνωση) PrWr (εγγραφή) Bus Transactions: BusRd: Ζητά αντίγραφο χωρίς σκοπό να το τροποποιήσει BusRdX: Ζητά αντίγραφο µε σκοπό να το τροποποιήσει BusWB: Ενηµερώνει τη µνήµη ραστηριότητες: Ενηµέρωση κατάστασης, Εκτέλεση bus transaction, Τοποθέτηση τιµής στο διάδροµο 50
51 ιάγραµµα Μετάβασης Καταστάσεων PrRd/ PrWr/ M BusRd/Flush PrWr/BusRdX S BusRdX/Flush BusRdX/ PrRd/BusRd PrWr/BusRdX PrRd/ BusRd/ I 51
52 Ενέργεια στον επεξεργαστή Ρ1 διαβάζει u Ρ3 διαβάζει u Ρ3 γράφει u Ρ1 διαβάζει u Ρ2 διαβάζει u Κατάσταση Ρ1 S S I S S Παράδειγµα Κατάσταση Ρ2 Κατάσταση Ρ S --- M --- S S S Ενέργεια στο διάδροµο BusRd BusRd BusRdX BusRd BusRd Τα δεδοµένα παρέχονται από Κύρια Μνήµη Κύρια Μνήµη Κύρια Μνήµη Κρυφή Μνήµη Ρ3 Κύρια Μνήµη 52
53 Συνάφεια στο Πρωτόκολλο MSI Η διάδοση των εγγραφών είναι προφανής Η σειριοποίηση των εγγραφών; Όλες οι εγγραφές που εµφανίζονται στο διάδροµο (BusRdX) διατάσσονται από αυτόν Οι αναγνώσεις που εµφανίζονται στο διάδροµο διατάσσονται ως προς αυτές Για τις εγγραφές που δεν εµφανίζονται στο διάδροµο: Μια ακολουθία τέτοιων εγγραφών µεταξύ δύο bus xactions για το ίδιο block πρέπει να προέρχονται από τον ίδιο επεξεργαστή P Στη σειριοποίηση, η ακολουθία εµφανίζεται µεταξύ αυτών των δύο bus xactions Οι αναγνώσεις από τον Ρ θα τις βλέπουν µε τη σειρά αυτή ως προς τις άλλες bus xactions Οι αναγνώσεις από άλλους επεξεργαστές διαχωρίζονται από την ακολουθία µε µία bus xaction, η οποία τις τοποθετεί σε σειρά ως προς τις εγγραφές Άρα οι αναγνώσεις από όλους τους επεξεργαστές βλέπουν τις εγγραφές µε την ίδια σειρά 53
54 Ακολουθιακή Συνέπεια στο Πρωτόκολλο MSI Ο διάδροµος επιβάλλει καθολική σειρά στις bus xactions για όλες τις θέσεις Ανάµεσα στις xactions, οι επεξεργαστές διαβάζουν / γράφουν τοπικά µε τη σειρά του προγράµµατος Άρα κάθε εκτέλεση ορίζει µια φυσική µερική διάταξη Η M j έπεται της M i αν (I) έπεται στη σειρά του προγράµµατος στον ίδιο επεξεργαστή, (ΙΙ) η M j δηµιουργεί bus xaction που έπεται της λειτουργίας µνήµης M i Σε ένα τµήµα ανάµεσα σε δύο bus transactions, κάθε παρεµβολή των λειτουργιών διαφορετικών επεξεργαστών δίνει συνεπή καθολική σειρά Σε ένα τέτοιο τµήµα, οι εγγραφές είναι ορατές στον επεξεργαστή P σειριοποιηµένες ως εξής: Writes from other processors by the previous bus xaction P issued Writes from P by program order 54
55 MESI - Πρωτόκολλο µε Ακύρωση Πρόβληµα πρωτοκόλλου MSI Ανάγνωση και τροποποίηση δεδοµένων µε 2 bus xactions, ακόµη και αν κανείς δεν τα µοιράζεται Π.χ. Σε ένα σειριακό πρόγραµµα BusRd (I->S) ακολουθούµενο από BusRdX ή BusUpgr (S->M) 55
56 MESI - Πρωτόκολλο µε Ακύρωση Προσθέτουµε τη κατάσταση αποκλειστικότητας (exclusive): γράφεται τοπικά χωρίς xaction, αλλά δεν τροποποιείται Καταστάσεις: Άκυρη - invalid Αποκλειστική - exclusive (µόνο αυτή η κρυφή µνήµη έχει αντίγραφο, όχι τροποποιηµένο) Μοιραζόµενη - shared (δύο ή περισσότερες κρυφές µνήµες µπορούν να έχουν αντίγραφο) Τροποποιηµένη modified Μετάβαση I -> E στο σήµα PrRd αν κανείς δεν έχει αντίγραφο Χρειάζεται σήµα shared στο διάδροµο ως απάντηση στο BusRd 56
57 ιάγραµµα Μετάβασης Καταστάσεων MESI PrRd PrWr/ M BusRd/Flush BusRdX/Flush PrWr/ PrWr/BusRdX E PrWr/BusRdX PrRd/ BusRd/ Flush BusRdX/Flush S PrRd/ BusRd (S) PrRd/ BusRd/Flush BusRdX/Flush PrRd/ BusRd(S) I 57
58 Ενέργεια στον επεξεργαστή Ρ1 διαβάζει u Ρ1 γράφει u Ρ3 διαβάζει u Ρ3 γράφει u Ρ1 διαβάζει u Ρ2 διαβάζει u Κατάσταση Ρ1 Ε Μ S I S S Παράδειγµα Κατάσταση Ρ2 Κατάσταση Ρ S --- M --- S S S Ενέργεια στο διάδροµο BusRd --- BusRd BusRdX BusRd BusRd Τα δεδοµένα παρέχονται από Κύρια Μνήµη --- Κρυφή Μνήµη Ρ1 Κύρια Μνήµη Κρυφή Μνήµη Ρ3 Κύρια Μνήµη 58
59 Dragon Write-back Πρωτόκολλο µε Ενηµέρωση 4 καταστάσεις Αποκλειστική - Exclusive (E): Την έχουµε εγώ και η µνήµη Μοιραζόµενη καθαρή - Shared clean (Sc): Εγώ, άλλοι και ίσως η µνήµη, εν είµαι ιδιοκτήτης Μοιραζόµενη τροποποιηµένη - Shared modified (Sm): Εγώ και άλλοι, αλλά όχι η µνήµη, Είµαι ο ιδιοκτήτης Οι Sm και Sc µπορούν να συνυπάρχουν δε διαφορετικές κρυφές µνήµες, µε µία µόνο Sm Τροποποιηµένη ή βρώµικη - Dirty (D): Εγώ και κανένας άλλος εν υπάρχει άκυρη κατάσταση Νέα γεγονότα επεξεργαστών: PrRdMiss, PrWrMiss Νέα bus transaction: BusUpd 59
60 Dragon ιάγραµµα Μετάβασης Καταστάσεων PrRd/ PrRd/ BusUpd/Update BusRd/ E Sc PrRdMiss/BusRd(S) PrRdMiss/BusRd(S) PrWr/ PrWr/BusUpd(S) BusUpd/Update PrWr/BusUpd(S) BusRd/Flush PrWrMiss/(BusRd(S); BusUpd) PrWrMiss/BusRd(S) Sm M PrWr/BusUpd(S) PrRd/ PrWr/BusUpd(S) BusRd/Flush PrRd/ PrWr/ 60
61 Ενέργεια στον επεξεργαστή Ρ1 διαβάζει u Ρ3 διαβάζει u Ρ3 γράφει u Ρ1 διαβάζει u Ρ2 διαβάζει u Κατάσταση Ρ1 Ε Sc Sc Sc Sc Παράδειγµα Κατάσταση Ρ2 Κατάσταση Ρ Sc --- Sm --- Sm Sc Sm Ενέργεια στο διάδροµο BusRd BusRd BusUpd --- BusRd Τα δεδοµένα παρέχονται από Κύρια Μνήµη Κύρια Μνήµη Κρυφή Μνήµη Ρ3 --- Κρυφή Μνήµη Ρ3 61
Συνάφεια Κρυφής (Λανθάνουσας) Μνήµης- -Συνέπεια Μνήµης (Cache Coherence-Memory Consistency)
Συνάφεια Κρυφής (Λανθάνουσας) Μνήµης- -Συνέπεια Μνήµης (Cache Coherence-Memory Consistency) για Πολυεπεξεργαστές Μοιραζόµενης Μνήµης (Shared Memory Multiprocessors) 1 Shared Memory Multiprocessors Η κύρια
Διαβάστε περισσότεραΥ- 07 Παράλληλα Συστήματα Συνέπεια και συνοχή μνήμης
Υ- 07 Παράλληλα Συστήματα Συνέπεια και συνοχή μνήμης Αρης Ευθυμίου Λειτουργία μνήμης Η μνήμη είναι ένας πίνακας αποθήκευσης Οταν διαβάζουμε μια θέση, περιμένουμε να πάρουμε την τελευταία τιμή που έχει
Διαβάστε περισσότεραΠολυπύρηνοι επεξεργαστές Multicore processors
Πολυπύρηνοι επεξεργαστές Multicore processors 1 Μετάβαση στους πολυπύρηνους(1) Απόδοση των µονοεπεξεργαστών 25% ετήσια βελτίωση της απόδοσης από το 1978 έως το 1986 Κυρίως από την εξέλιξη της τεχνολογίας
Διαβάστε περισσότεραΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ, ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΚΑΙ ΔΙΚΤΥΩΝ. ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ Δρασίδης Γεώργιος
ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ, ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΚΑΙ ΔΙΚΤΥΩΝ Μελέτη επεξεργαστών διπλού πυρήνα, πρωτοκόλλων συνοχής μνήμης και μελέτη υλοποίησης σε FPGA ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ Δρασίδης Γεώργιος
Διαβάστε περισσότεραΣυνάφεια Κρυφής Μνήµης σε Επεκτάσιµα Μηχανήµατα
Συνάφεια Κρυφής Μνήµης σε Επεκτάσιµα Μηχανήµατα Συστήµατα µε Κοινή ή Κατανεµηµένη Μνήµη Σύστηµα µοιραζόµενης µνήµης 1 n $ $ Bus Mem I/O devices 1 n Σύστηµα κατανεµηµένης µνήµης Mem $ Mem $ Interconnection
Διαβάστε περισσότεραΣυστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας Ενότητα 10: Υποκλέπτοντα πρωτόκολλα. 2-state,3-state,4-state (MESI, dragon) cache coherent protocols. Συμφωνία
Διαβάστε περισσότεραΥ- 01 Αρχιτεκτονική Υπολογιστών Πολυεπεξεργαστές
Υ- 01 Αρχιτεκτονική Υπολογιστών Πολυεπεξεργαστές Αρης Ευθυμίου Το σημερινό μάθημα! Εισαγωγή σε παράλληλα συστήματα Ταξινόμιση κατά Flynn Μέθοδοι επικοινωνίας: shared memory, message passing Δίκτυα διασύνδεσης!
Διαβάστε περισσότεραParallel Architectures
Parallel Architectures Coherence & Consistency cslab@ntua 2010 2011 Παράλληλες Αρχιτεκτονικές (1) Οι πολυεπεξεργαστές γνώρισαν ιδιαίτερη ανάπτυξη από τη δεκαετία των 90s : Servers Supercomputers για την
Διαβάστε περισσότεραΣυστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας Ενότητα 10: Υποκλέπτοντα πρωτόκολλα. 2-state,3-state,4-state (MESI, dragon) cache coherent protocols. Συμφωνία
Διαβάστε περισσότεραSMPcache. Ένα εργαλείο για προσομοίωση-οπτικοποίηση κρυφής μνήμης (Cache)
SMPcache Ένα εργαλείο για προσομοίωση-οπτικοποίηση κρυφής μνήμης (Cache) 1. Βασικές ρυθμίσεις του συστήματος: δημιουργία μια δικής μας σύνθεσης συστήματος. Το SMPcache είναι ένα εργαλείο με το οποίο μπορούμε
Διαβάστε περισσότεραΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2
ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 Πολυπύρηνοι επεξεργαστές, μέρος 2 Αρης Ευθυμίου Πηγές διαφανειών: συνοδευτικές διαφάνειες αγγλικης εκδοσης του βιβλιου Cache coherence & scalability! Τα πρωτόκολλα
Διαβάστε περισσότερα8/3/2016 Οργάνωση κοινόχρηστης μνήμης (ΙΙ) Η λειτουργία της μνήμης
Υ07 Παράλληλα Συστήματα 2015-16 8/3/2016 Οργάνωση κοινόχρηστης μνήμης (ΙΙ) Η λειτουργία της μνήμης Ιεραρχία μνήμης & cache Επεξεργαστής: ταχύτατος Μνήμη: αργή (και μάλιστα η διαφορά ταχύτητας αυξάνεται)
Διαβάστε περισσότεραΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr ΠΡΟΗΓΜΕΝΑ ΘΕΜΑΤΑ
Διαβάστε περισσότεραCaches for Parallel Architectures. (Coherence)
Caches for Parallel Architectures (Coherence) 1 Πηγές/Βιβλιογραφία Parallel Computer Architecture: A Hardware/Software Approach, D. E. Culler, J. P. Singh, Morgan Kaufmann Publishers, INC. 1999 Transactional
Διαβάστε περισσότεραCaches for Parallel Architectures
Caches for Parallel Architectures (Coherence) Figures, examples από 1. Parallel Computer Architecture: A Hardware/Software Approach, D. E. Culler, J. P. Singh, Morgan Kaufmann Publishers, INC. 1999. 2.
Διαβάστε περισσότεραΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr ΠΡΟΗΓΜΕΝΑ ΘΕΜΑΤΑ
Διαβάστε περισσότεραΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Οργάνωση Υπολογιστών Εργαστήριο 14: Συνοχή (Coherence) Κρυφών Μνημών, Προχωρημένοι Επεξεργαστές (Out-of-Order, Superscalar, Multithreading, Multicores) Μανόλης Γ.Η.
Διαβάστε περισσότεραΥ- 01 Αρχιτεκτονική Υπολογιστών Πολυεπεξεργαστές, 2ο μέρος
Υ- 01 Αρχιτεκτονική Υπολογιστών Πολυεπεξεργαστές, 2ο μέρος Αρης Ευθυμίου Το σημερινό μάθημα! Cache coherence directory protocols! Memory consistency! MulG- threading 2 Cache coherence & scalability! Τα
Διαβάστε περισσότεραΣειρά Ασκήσεων 13: Συνοχή (Coherence) Κρυφών Μνημών, Προχωρημένοι Επεξεργαστές (Out-of-Order, Superscalar, Multithreading, Multicores)
ΗΥ-225: Οργάνωση Υπολογιστών 1νοιξη 2013 Τμ. Επ. Υπολογιστών Πανεπιστήμιο Κρήτης Σειρά Ασκήσεων 13: Συνοχή (Coherence) Κρυφών Μνημών, Προχωρημένοι Επεξεργαστές (Out-of-Order, Superscalar, Multithreading,
Διαβάστε περισσότεραΣυστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας Ενότητα 9: Συμφωνία μνημών CACHE. Μοντέλα Συνέπειας Μνήμης. Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο
Διαβάστε περισσότεραΣυστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας Ενότητα 9: Συμφωνία μνημών CACHE. Μοντέλα Συνέπειας Μνήμης. Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο
Διαβάστε περισσότεραParallel Architectures
Parallel Architectures Memory Consistency + Synchronization Figures, examples από 1. Transactional Memory, D. Wood, Lecture Notes in ACACES 2009 2. Krste Asanović s s Lecture Notes, University of California,
Διαβάστε περισσότεραΟργάνωση Υπολογιστών (IΙI)
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2016-17 Οργάνωση Υπολογιστών (IΙI) (συσκευές εισόδου-εξόδου) http://mixstef.github.io/courses/csintro/ Μ.Στεφανιδάκης Ένα τυπικό
Διαβάστε περισσότεραΙεραρχία Μνήμης. Ιεραρχία μνήμης και τοπικότητα. Σκοπός της Ιεραρχίας Μνήμης. Κρυφές Μνήμες
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Κρυφές Μνήμες (οργάνωση, λειτουργία και απόδοση) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Για βελτίωση της απόδοσης
Διαβάστε περισσότεραΕισαγωγή Θέματα H/W. Χάρης Μανιφάβας Τμήμα Εφ. Πληροφορικής & Πολυμέσων ΤΕΙ Κρήτης. Κατανεμημένα Συστήματα (Ε) Εισαγωγή: Θέματα H/W 1
Εισαγωγή Θέματα H/W Χάρης Μανιφάβας Τμήμα Εφ. Πληροφορικής & Πολυμέσων ΤΕΙ Κρήτης Εισαγωγή: Θέματα H/W 1 Θέματα Hardware Τα ΚΣ αποτελούνται από πολλαπλά CPUs ιαφορετικοί τρόποι σύνδεσης και επικοινωνίας
Διαβάστε περισσότεραΙόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες. (οργάνωση, λειτουργία και απόδοση)
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Κρυφές Μνήμες (οργάνωση, λειτουργία και απόδοση) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Ιεραρχία συχνά και το
Διαβάστε περισσότεραΒασικές συσκευές Ε/Ε. Είσοδος Έξοδος στον υπολογιστή. Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (IΙI) Μ.
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2016-17 Οργάνωση Υπολογιστών (IΙI) (συσκευές εισόδου-εξόδου) http://mixstef.github.io/courses/csintro/ Μ.Στεφανιδάκης Ένα τυπικό
Διαβάστε περισσότεραΠροβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη)
Προβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη) ΙΙΙ 1 lalis@inf.uth.gr Ταυτόχρονη εκτέλεση Ο προγραμματιστής δεν ελέγχει (άμεσα) την εκτέλεση/εναλλαγή των νημάτων Δεν γνωρίζει πότε θα αρχίσει
Διαβάστε περισσότεραΠΑΡΑΛΛΗΛΗ ΕΠΕΞΕΡΓΑΣΙΑ
ΠΑΡΑΛΛΗΛΗ ΕΠΕΞΕΡΓΑΣΙΑ ΜΝΗΜΗ Πρωτόκολλα Συνέπειας Μνήµης σε Πολυεπεξεργαστικά Υπολογιστικά Συστήµατα ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ & ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΡΓΑΣΤΗΡΙΟ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΥΨΗΛΩΝ ΕΠΙ
Διαβάστε περισσότεραΑρχιτεκτονική Υπολογιστών
Γιώργος Δημητρίου Ενότητα 11 η : Εισαγωγή σε Παράλληλες Αρχιτεκτονικές Παράλληλη Επεξεργασία Επίπεδο Παραλληλισμού Από εντολές έως ανεξάρτητες διεργασίες Οργανώσεις Παράλληλων Αρχιτεκτονικών Συμμετρικοί,
Διαβάστε περισσότεραΤεχνολογικά Επιτεύγµατα. Πλεονεκτήµατα. Ορισµός Κατανεµηµένου Συστήµατος. Μειονεκτήµατα. E-03: Λειτουργικά Συστήµατα ΙΙ 6. Εαρινό Εξάµηνο 2005-06
Τεχνολογικά Επιτεύγµατα Ε-03: Λειτουργικά Συστήµατα ΙΙ Εαρινό Εξάµηνο 2005-06 Ανάπτυξη ισχυρών µικροεπεξεργαστών ηµιουργία τοπικών δικτύων υψηλών ταχυτήτων «Εισαγωγή στα Κατανεµηµένα Λειτουργικά Συστήµατα»
Διαβάστε περισσότεραΑρχιτεκτονική υπολογιστών
1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 4 : Κρυφή Μνήμη Καρβούνης Ευάγγελος Δευτέρα, 30/11/2015 Χαρακτηριστικά Θέση Χωρητικότητα Μονάδα Μεταφοράς
Διαβάστε περισσότεραΣυστήματα μνήμης και υποστήριξη μεταφραστή για MPSoC
Συστήματα μνήμης και υποστήριξη μεταφραστή για MPSoC Πλεονεκτήματα MPSoC Είναι ευκολότερο να σχεδιαστούν πολλαπλοί πυρήνες επεξεργαστών από τον σχεδιασμό ενός ισχυρότερου και πολύ πιο σύνθετου μονού επεξεργαστή.
Διαβάστε περισσότεραΣυνοχή κρυφής μνήμης σε πολυπύρηνα/πολυεπεξεργαστικά συστήματα
Συνοχή κρυφής μνήμης σε πολυπύρηνα/πολυεπεξεργαστικά συστήματα ΙΙΙ 1 lalis@inf.uth.gr Απλοποιημένο μοντέλο συστήματος CPU/cores πάνω σε δίαυλο/δίκτυο (bus/interconnect) για απλότητα, εδώ CPU = core Η κυρίως
Διαβάστε περισσότεραΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2
ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 11ο μάθημα: πολυπύρηνοι επεξεργαστές, μέρος 1 Αρης Ευθυμίου Πηγές διαφανειών: συνοδευτικές διαφάνειες αγγλικης εκδοσης του βιβλιου Παράλληλη επεξεργασία Στο προηγούμενο
Διαβάστε περισσότεραΕικονική Μνήμη (Virtual Μemory)
ΗΥ 431 Αρχιτεκτονική Παραλλήλων Συστημάτων Διάλεξη 16 Εικονική Μνήμη (Virtual Μemory) Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ Απλό πείραμα int *data = malloc((1
Διαβάστε περισσότεραΥ- 07 Παράλληλα Συστήματα Συνοχή κρυφής μνήμης με σύστημα καταλόγων
Υ- 07 Παράλληλα Συστήματα Συνοχή κρυφής μνήμης με σύστημα καταλόγων Αρης Ευθυμίου Γιατί όχι snooping Το snooping στηρίζεται σε εκπομπή σε όλους (broadcast) πρέπει όλοι οι ελεγκτές κρυφής μνήμης να μπορούν
Διαβάστε περισσότεραΠανεπιστήμιο Θεσσαλίας Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Τμήμα Πληροφορικής
Πανεπιστήμιο Θεσσαλίας Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Τμήμα Πληροφορικής Άσκηση : Λυμένες Ασκήσεις Έστω ένα σύστημα μνήμης, στο οποίο έχουμε προσθέσει μια κρυφή μνήμη θυμάτων 6 θέσεων
Διαβάστε περισσότεραΤμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών H/Y Department of Electrical and Computer Engineering. Εργαστήριο 8. Χειμερινό Εξάμηνο
Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών H/Y Department of Electrical and Computer Engineering Οργάνωση και Σχεδίαση Η/Y (HY232) Εργαστήριο 8 Χειμερινό Εξάμηνο 2016-2017 1. Προσομοίωση λειτουργίας ιεραρχίας
Διαβάστε περισσότεραΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr ΠΡΟΗΓΜΕΝΑ ΘΕΜΑΤΑ
Διαβάστε περισσότεραΥ- 07 Παράλληλα Συστήματα Transac9onal memory
Υ- 07 Παράλληλα Συστήματα Transac9onal memory Αρης Ευθυμίου Παρ. προγρ/μός με κλειδιά Χαμηλού επιπέδου πολύ κοντά στα μέσα και τις δομές του υλικού πολλές λεπτομέρειες, εύκολα γίνεται λάθος χαμηλή παραγωγικότητα
Διαβάστε περισσότεραΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων:. Πλεξουσάκης
ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων:. Πλεξουσάκης Συναλλαγές ιαχείριση Συναλλαγών Τζικούλης Βασίλειος Credits:Γιάννης Μακρυδάκης Συναλλαγές Η ταυτόχρονες συναλλαγές (δοσοληψίες, transactions) µε µια
Διαβάστε περισσότεραΠΛΕ- 027 Μικροεπεξεργαστές 9ο μάθημα: Αρχιτεκτονική συστήματος μνήμης: Κρυφές μνήμες εισαγωγή
ΠΛΕ- 027 Μικροεπεξεργαστές 9ο μάθημα: Αρχιτεκτονική συστήματος μνήμης: Κρυφές μνήμες εισαγωγή Αρης Ευθυμίου Σύστημα μνήμης Η μνήμη είναι σημαντικό κομμάτι ενός υπολογιστή Επηρεάζει κόστος, ταχύτητα, κατανάλωση
Διαβάστε περισσότεραΠολυεπεξεργαστές Κοινής Μνήμης & Multi-cores. Κεφάλαιο ΙΙ
Πολυεπεξεργαστές Κοινής Μνήμης & Multi-cores Κεφάλαιο ΙΙ Πολυεπεξεργαστές κοινής μνήμης Ανεξάρτητοι επεξεργαστές & Κοινές μνήμες Σα πολυπύρηνα συστήματα είναι πολλοί πυρήνες που μοιράζονται την ίδια κύρια
Διαβάστε περισσότεραΠολυεπεξεργαστές Κοινόχρηστης Μνήμης & Multi-cores. Κεφάλαιο ΙΙ
Πολυεπεξεργαστές Κοινόχρηστης Μνήμης & Multi-cores Κεφάλαιο ΙΙ Βιβλίο Β. Δημακόπουλος Παράλληλα Συστήματα και Προγραμματισμός 2016 Αποθετήριο Κάλλιπος (ελεύθερη πρόσβαση, PDF): http://repository.kallipos.gr/handle/11419/3209
Διαβάστε περισσότεραΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr ΠΡΟΗΓΜΕΝΑ ΘΕΜΑΤΑ
Διαβάστε περισσότεραΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr ΠΡΟΗΓΜΕΝΑ ΘΕΜΑΤΑ
Διαβάστε περισσότεραΕπιπλέον διδακτικό υλικό κρυφών μνημών: set-associative caches, πολιτικές αντικατάστασης, χειρισμός εγγραφών
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Οργάνωση Υπολογιστών Επιπλέον διδακτικό υλικό κρυφών μνημών: set-associative caches, πολιτικές αντικατάστασης, χειρισμός εγγραφών Μανόλης Γ.Η. Κατεβαίνης Τμήμα Επιστήμης
Διαβάστε περισσότεραΣΥΣΚΕΥΕΣ ΑΠΟΘΗΚΕΥΣΗΣ (ΜΝΗΜΗ)
ΣΥΣΚΕΥΕΣ ΑΠΟΘΗΚΕΥΣΗΣ (ΜΝΗΜΗ) Συσκευές αποθήκευσης Ένας υπολογιστής προκειµένου να αποθηκεύσει δεδοµένα χρησιµοποιεί δύο τρόπους αποθήκευσης: Την Κύρια Μνήµη Τις συσκευές µόνιµης αποθήκευσης (δευτερεύουσα
Διαβάστε περισσότερα3 η ΑΣΚΗΣΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ ΥΠΟΛΟΓΙΣΤΩΝ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ntua.gr 3 η ΑΣΚΗΣΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ
Διαβάστε περισσότεραΓιατί υϖάρχει τέτοια καθολική κατάσταση;
ΥΛΟΠΟΙΗΣΗ ΚΑΤΑΧΩΡΗΤΩΝ ΑΝΑΓΝΩΣΗΣ/ΕΓΓΡΑΦΗΣ Καταχωρητές που µοιάζουν πιο πολύπλοκοι µπορούν να υλοποιηθούν από απλούστερους καταχωρητές. Multi-valued from Binary Βασικό Αντικείµενο: δυαδικός καταχωρητής ο
Διαβάστε περισσότεραΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων: ημήτρης Πλεξουσάκης
ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων: ημήτρης Πλεξουσάκης Συναλλαγές ιαχείριση Συναλλαγών Αυγουστάκη Αργυρώ Συναλλαγές Κράτησε για τον κ. Χ την θέση 13Α για LA! Κράτησε για τον κ. Y την θέση 13Α για
Διαβάστε περισσότεραΚεφάλαιο 4 Σύνδεση Μικροεπεξεργαστών και Μικροελεγκτών ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ
Κεφάλαιο 4 Σύνδεση Μικροεπεξεργαστών και Μικροελεγκτών ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ 1. Παρακάτω δίνονται μερικοί από τους ακροδέκτες που συναντάμε στην πλειοψηφία των μικροεπεξεργαστών. Φτιάξτε έναν πίνακα που να
Διαβάστε περισσότεραΔιάλεξη 13: Κατανεμημένη Κοινόχρηστη Μνήμη. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι
Διάλεξη 13: Κατανεμημένη Κοινόχρηστη Μνήμη ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Τι θα δούμε σήμερα Προσομοίωση Κοινόχρηστης Μνήμης Συνθήκες Συνέπειας Αλγόριθμος χωρίς σφάλματα ΕΠΛ432: Κατανεµηµένοι Αλγόριθµοι
Διαβάστε περισσότεραΠροβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη)
Προβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη) ΙΙΙ 1 lalis@inf.uth.gr Υποθέσεις εργασίας Νήματα/διεργασίες με κοινή μνήμη Αυτόματη διακοπή/εναλλαγή νημάτων/διεργασιών (π.χ. πάνω από 1 CPU
Διαβάστε περισσότεραΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων: ημήτρης Πλεξουσάκης
ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων: ημήτρης Πλεξουσάκης Συναλλαγές ιαχείριση Συναλλαγών Αυγουστάκη Αργυρώ Συναλλαγές Κράτησε για τον κ. Χ την θέση 13Α για LA! Κράτησε για τον κ. Y την θέση 13Α για
Διαβάστε περισσότεραΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2
ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 7ο μάθημα: Κρυφές μνήμες (cache) - εισαγωγή Αρης Ευθυμίου Πηγές διαφανειών: συνοδευτικές διαφάνειες αγγλικης εκδοσης του βιβλιου Σύστημα μνήμης! Η μνήμη είναι σημαντικό
Διαβάστε περισσότεραΣυνέπεια μνήμης σε πολυπύρηνα/πολυεπεξεργαστικά συστήματα
Συνέπεια μνήμης σε πολυπύρηνα/πολυεπεξεργαστικά συστήματα ΙΙΙ 1 lalis@inf.uth.gr Απλοποιημένο μοντέλο συστήματος CPU/cores πάνω σε δίαυλο/δίκτυο (bus/interconnect) για απλότητα, εδώ CPU = core Η κυρίως
Διαβάστε περισσότεραΣελίδα 1 από 11. Απαντήσεις στο φυλλάδιο 57 Ερώτηση: 1 η : Οι ακροδέκτες αυτοί χρησιµοποιούνται για:
Σελίδα 1 από 11 Απαντήσεις στο φυλλάδιο 57 Ερώτηση: 1 η : Οι ακροδέκτες αυτοί χρησιµοποιούνται για: την επικοινωνία, µε τα υπόλοιπα ολοκληρωµένα κυκλώµατα του υπολογιστικού συστήµατος. την παροχή τροφοδοσίας
Διαβάστε περισσότεραΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ Ε Ρ Γ ΑΣ Τ ΗΡ ΙΟ Υ ΠΟΛΟΓΙΣ Τ ΙΚΩΝ Σ Υ Σ Τ ΗΜΑΤΩΝ w w w. c s l ab.ece.ntua.gr
Διαβάστε περισσότεραΠροβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη)
Προβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη) ΙΙΙ 1 lalis@inf.uth.gr Υποθέσεις εργασίας Νήματα/διεργασίες με κοινή μνήμη Αυτόματη διακοπή/εναλλαγή νημάτων/διεργασιών (π.χ. πάνω από 1 CPU
Διαβάστε περισσότεραΔιεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1
Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1 lalis@inf.uth.gr Ο κώδικας δεν εκτελείται «μόνος του» Ο εκτελέσιμος κώδικας αποθηκεύεται σε ένα αρχείο Το αρχείο είναι μια «παθητική» οντότητα
Διαβάστε περισσότεραΕικονική Μνήμη (Virtual Μemory)
ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 16 Εικονική Μνήμη (Virtual Μemory) Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ Απλό πείραμα int *data = malloc((1
Διαβάστε περισσότεραΚεφάλαιο 7 Ιεραρχία Μνήμης (Memory Hierarchy)
Κεφάλαιο 7 Ιεραρχία Μνήμης (Memory Hierarchy) 1 Συστήματα Μνήμης Η οργάνωση του συστήματος μνήμης επηρεάζει τη λειτουργία και απόδοση ενός μικροεπεξεργαστή: Διαχείριση μνήμης και περιφερειακών (Ι/Ο) απότολειτουργικόσύστημα
Διαβάστε περισσότεραΑρχιτεκτονική υπολογιστών
1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 3 : Μια άποψη του κορυφαίου επιπέδου λειτουργίας και διασύνδεσης του υπολογιστή Καρβούνης Ευάγγελος Η έννοια
Διαβάστε περισσότερα5. Παράλληλα Συστήματα: Εισαγωγή
Κεφάλαιο 5: Παράλληλα Συστήματα: Εισαγωγή 116 5. Παράλληλα Συστήματα: Εισαγωγή Τα τελευταία χρόνια υπάρχει όλο και αυξανόμενη ζήτηση για αύξηση της απόδοσης των υπολογιστικών συστημάτων. Ταυτόχρονα υπάρχει
Διαβάστε περισσότεραΤο Πρόβληµα Οµοφωνίας Σύγχρονα Συστήµατα Μεταβίβασης Μηνύµατος Μοντέλο Κατάρρευσης (crash model) Οι διεργασίες µπορούν να σταµατούν να εκτελούνται σε
Οµοφωνία σε σύστηµα µε αϖοτυχίες κατάρρευσης διεργασιών Παναγιώτα Φατούρου Κατανεµηµένα Συστήµατα 1 Το Πρόβληµα Οµοφωνίας Σύγχρονα Συστήµατα Μεταβίβασης Μηνύµατος Μοντέλο Κατάρρευσης (crash model) Οι διεργασίες
Διαβάστε περισσότεραParallel Architectures
Parallel Architectures Memory Consistency + Synchronization Figures, examples από 1. Transactional Memory, D. Wood, Lecture Notes in ACACES 2009 2. Krste Asanović s Lecture Notes, University of California,
Διαβάστε περισσότεραParallel Architectures
Parallel Architectures Memory Consistency + Synchronization Figures, examples από 1. Transactional Memory, D. Wood, Lecture Notes in ACACES 2009 2. Krste Asanović s Lecture Notes, University of California,
Διαβάστε περισσότεραΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 121 ΕΡΓΑΣΤΗΡΙΑ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΜΝΗΜΗ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΖΟΜΕΝΗ ΛΟΓΙΚΗ ΥΠΕΥΘΥΝΟΣ ΕΡΓΑΣΤΗΡΙΩΝ: ΧΡΥΣΟΣΤΟΜΟΣ ΧΡΥΣΟΣΤΟΜΟΥ ΕΑΡΙΝΟ ΕΞΑΜΗΝΟ 2001 ΕΠΛ 121 ΕΡΓΑΣΤΗΡΙΑ ΨΗΦΙΑΚΩΝ
Διαβάστε περισσότεραΠροβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη)
Προβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη) ΙΙΙ 1 lalis@inf.uth.gr Υποθέσεις εργασίας Νήματα/διεργασίες με κοινή μνήμη Αυτόματη διακοπή/εναλλαγή νημάτων/διεργασιών (π.χ. πάνω από 1 CPU
Διαβάστε περισσότεραΗ ιεραρχία της μνήμης
Η ιεραρχία της μνήμης Οι περιορισμοί στο σχεδιασμό της μνήμης συνοψίζονται σε τρεις ερωτήσεις : 1) Πόση 2) Πόσο γρήγορη 3) Πόσο ακριβή Ερωτήματα-Απαντήσεις Ερώτημα πόση μνήμη. Είναι ανοικτό. Αν υπάρχει
Διαβάστε περισσότεραΠανεπιστήµιο Θεσσαλίας
Πανεπιστήµιο Θεσσαλίας Τµήµα Πληροφορικής Ενότητα 8η: Συσκευές Ε/Ε - Αρτηρίες Άσκηση 1: Υπολογίστε το µέσο χρόνο ανάγνωσης ενός τµήµατος των 512 bytes σε µια µονάδα σκληρού δίσκου µε ταχύτητα περιστροφής
Διαβάστε περισσότεραΙδιοκτησία Αντικειµένου
Software Transactional Memory H STM υποστηρίζει την εκτέλεση δοσοληψιών από τις διεργασίες, οι οποίες περιέχουν λειτουργίες που ο χρήστης θέλει να εκτελέσει στα διαµοιραζόµενα αντικείµενα. H STM εγγυάται
Διαβάστε περισσότεραΒάσεις Δεδομένων. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα
Βάσεις Δεδομένων Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Στέργιος Παλαμάς, Υλικό Μαθήματος «Βάσεις Δεδομένων», 2015-2016 Κεφάλαιο 7: Transactions (Συναλλαγές) Ο λόγος που αναπτύχθηκαν
Διαβάστε περισσότεραΕικονική Μνήμη (virtual memory)
Εικονική Μνήμη (virtual memory) Πολλά προγράμματα εκτελούνται ταυτόχρονα σε ένα υπολογιστή Η συνολική μνήμη που απαιτείται είναι μεγαλύτερη από το μέγεθος της RAM Αρχή τοπικότητας (η μνήμη χρησιμοποιείται
Διαβάστε περισσότεραΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ Η/Υ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ Η/Υ ΤΕΛΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΤΗΝ ΟΡΓΑΝΩΣΗ ΣΤΟΥΣ Η/Y (ΗΥ232) Τετάρτη, 21 Δεκεμβρίου 2016 ΔΙΑΡΚΕΙΑ ΔΙΑΓΩΝΙΣΜΑΤΟΣ 3 ΩΡΕΣ Για πλήρη
Διαβάστε περισσότεραΕπιτεύγµατα των Λ.Σ.
Επιτεύγµατα των Λ.Σ. ιεργασίες ιαχείριση Μνήµης Ασφάλεια και προστασία δεδοµένων Χρονοπρογραµµατισµός & ιαχείρηση Πόρων οµή Συστήµατος ιεργασίες Ένα πρόγραµµα σε εκτέλεση Ένα στιγµιότυπο ενός προγράµµατος
Διαβάστε περισσότεραΙΑΧΕΙΡΙΣΗ ΟΣΟΛΗΨΙΩΝ Να θυµηθούµε:
ΙΑΧΕΙΡΙΣΗ ΟΣΟΛΗΨΙΩΝ Να θυµηθούµε: Μια βάση δεδοµένων είναι σε συνεπή κατάσταση (consistent state) εάν όλοι οι περιορισµοί ακεραιότητας που έχουν δηλωθεί για αυτήν πληρούνται. Οι αλλαγές στην κατάσταση
Διαβάστε περισσότεραΑσκήσεις Caches
Ασκήσεις Caches 1 Άσκηση 1η Θεωρήστε ένα σύστημα μνήμης με μία cache: 4-way set associative μεγέθους 256ΚΒ, με cache line 8 λέξεων. Χαρακτηριστικά συστήματος μνήμης: μέγεθος της λέξης είναι 32 bits. 1
Διαβάστε περισσότεραΟργάνωση και Αρχιτεκτονική Υπολογιστών. Κεφάλαιο 7.4
Οργάνωση και Αρχιτεκτονική Υπολογιστών Κεφάλαιο 7.4 Ε/Ε Οδηγούμενη από Διακοπές Το πρόβλημα με την προγραμματιζόμενη Ε/Ε είναι ότι ο επεξεργαστής πρέπει να περιμένει ώστε η μονάδα Ε/Ε που τον ενδιαφέρει
Διαβάστε περισσότεραProcessor-Memory (DRAM) ιαφορά επίδοσης
Processor-Memory (DRAM) ιαφορά επίδοσης µproc 6%/yr 98 98 982 983 984 985 986 987 988 989 99 99 992 993 994 995 996 997 998 999 2 2 22 23 24 25 Performance Processor-Memory Performance Gap: (grows 5% /
Διαβάστε περισσότεραΆσκηση 1η. Θεωρήστε ένα σύστημα μνήμης με μία cache: 4 way set associative μεγέθους 256ΚΒ,
Ασκήσεις Caches Άσκηση 1η Θεωρήστε ένα σύστημα μνήμης με μία cache: 4 way set associative μεγέθους 256ΚΒ, με cache line 8 λέξεων. Χαρακτηριστικά συστήματος μνήμης: μέγεθος της λέξης είναι 32 bits. 1 byte
Διαβάστε περισσότεραΑσκήσεις στα Προηγμένα Θέματα Αρχιτεκτονικής Υπολογιστών
Ασκήσεις στα Προηγμένα Θέματα Αρχιτεκτονικής Υπολογιστών ακ. έτος 2006-2007 Νεκτάριος Κοζύρης Νίκος Αναστόπουλος {nkoziris,anastop}@cslab.ece.ntua.gr Άσκηση 1: pipelining Εξετάζουμε την εκτέλεση του παρακάτω
Διαβάστε περισσότεραΔιάλεξη 14 Εισαγωγή στην Ιεραρχία Μνήμης
ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 14 Εισαγωγή στην Ιεραρχία Μνήμης Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων 1 H Μικρο-αρχιτεκτονική μας 4 1 0 PCSrc IF/ID Control ID/EX
Διαβάστε περισσότεραProcessor-Memory (DRAM) Διαφορά επίδοσης
Performance Processor-Memory (DRAM) Διαφορά επίδοσης 98 98 982 983 984 985 986 987 988 989 99 99 992 993 994 995 996 997 998 999 2 2 22 23 24 25 µproc 6%/yr Processor-Memory Performance Gap: (grows 5%
Διαβάστε περισσότεραΜάθημα 3: Αρχιτεκτονική Υπολογιστών
Μάθημα 3: Αρχιτεκτονική Υπολογιστών 3.1 Περιφερειακές μονάδες και τμήμα επεξεργασίας Στην καθημερινή μας ζωή ερχόμαστε συνέχεια σε επαφή με υπολογιστές. Ο υπολογιστής είναι μια συσκευή που επεξεργάζεται
Διαβάστε περισσότεραΔημήτρης Ντόντος (AM: 976)
Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κρήτης Σχολή Τεχνολογικών Εφαρμογών Τμήμα Εφαρμοσμένης Πληροφορικής & Πολυμέσων Πτυχιακή Εργασία Τίτλος: Μελέτη και αξιολόγηση διαφορετικών τρόπων επικοινωνίας και συγχρονισμού
Διαβάστε περισσότερα1. Οργάνωση της CPU 2. Εκτέλεση εντολών 3. Παραλληλία στο επίπεδο των εντολών 4. Γραμμές διοχέτευσης 5. Παραλληλία στο επίπεδο των επεξεργαστών
ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ ΟΡΓΑΝΩΣΗ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Ι Γ. Τσιατούχας 2 ο Κεφάλαιο ιάρθρωση 1. Οργάνωση της 2. εντολών 3. Παραλληλία στο επίπεδο των εντολών 4. Γραμμές διοχέτευσης 5. Παραλληλία στο
Διαβάστε περισσότεραΑρχιτεκτονική Επεξεργαστών Ψ.Ε.Σ
ΕΣ 08 Επεξεργαστές Ψηφιακών Σηµάτων Αρχιτεκτονική Επεξεργαστών Ψ.Ε.Σ Βιβλιογραφία Ενότητας Kehtarnavaz [2005]: Chapter 3 Kuo [2005]: Chapters 1 & 4-5 Lapsley [2002]: Chapter 4 Hayes [2000]: Κεφάλαιo 8
Διαβάστε περισσότεραi Όλες οι σύγχρονες ΚΜΕ είναι πολυπλοκότερες!
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Κεντρική Επεξεργασίας (Σχεδιασμός και λειτουργία μιας απλής ΚΜΕ) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Η υπολογιστική
Διαβάστε περισσότεραΠανεπιστήμιο Θεσσαλίας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων
Πανεπιστήμιο Θεσσαλίας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων Οργάνωση Η/Υ Ενότητα 1η: Εισαγωγή στην Οργάνωση Η/Υ Άσκηση 1: Αναλύστε τη διαδοχική εκτέλεση των παρακάτω εντολών MIPS με βάση τις
Διαβάστε περισσότεραΚεντρική Μονάδα Επεξεργασίας
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Κεντρική Μονάδα Επεξεργασίας (Σχεδιασμός και λειτουργία μιας απλής ΚΜΕ) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης
Διαβάστε περισσότεραΈλεγχος Ταυτοχρονισμού
Έλεγχος Ταυτοχρονισμού Κεφάλαιο 17 Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke Ελληνική Μετάφραση: Γεώργιος Ευαγγελίδης 1 Συγκρουσιακώς Σειριοποιήσιμα Χρονοπρογράμματα Δυο χρονοπρογράμματα
Διαβάστε περισσότεραΛύσεις Παλιών Θεµάτων. Συστήµατα Παράλληλης Επεξεργασίας, 9ο εξάµηνο Υπεύθ. Καθ. Νεκτάριος Κοζύρης
Λύσεις Παλιών Θεµάτων Συστήµατα Παράλληλης Επεξεργασίας, 9ο εξάµηνο Υπεύθ. Καθ. Νεκτάριος Κοζύρης Θέµα Φεβρουάριος 2003 1) Έστω ένας υπερκύβος n-διαστάσεων. i. Να βρεθεί ο αριθµός των διαφορετικών τρόπων
Διαβάστε περισσότεραΕίδη των Cache Misses: 3C s
Είδη των Cache Misses: 3C s 1 Compulsory: Συμβαίνουν κατά την πρώτη πρόσβαση σε ένα block. Το block πρέπει να κληθεί από χαμηλότερα επίπεδα μνήμης και να τοποθετηθεί στην cache (αποκαλούνται και cold start
Διαβάστε περισσότεραΔιεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1
Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1 lalis@inf.uth.gr Πρόγραμμα και εκτέλεση προγράμματος Ο εκτελέσιμος κώδικας αποθηκεύεται σε ένα αρχείο Το αρχείο είναι μια «παθητική» οντότητα
Διαβάστε περισσότεραΑ. Δίνονται οι. (i) στη. πρέπει να. πιο. (ii) $a0. $s0 θα πρέπει να. αποθήκευση. αυξάνει τον. f: sub sll add sub jr. h: addi sw sw.
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΡ ΙΟ ΥΠΟΛΟΟ ΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua. gr ΑΡΧΙΤΕΚΤΟΝΙΚΗ
Διαβάστε περισσότεραιεργασίες και Επεξεργαστές στα Κατανεµηµένων Συστηµάτων
ιεργασίες και Επεξεργαστές στα Κατανεµηµένων Συστηµάτων Μαρία Ι. Ανδρέου ΗΜΥ417, ΗΜΥ 663 Κατανεµηµένα Συστήµατα Χειµερινό Εξάµηνο 2006-2007 Τµήµα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Πανεπιστήµιο
Διαβάστε περισσότεραΕΙΣΑΓΩΓΗ. Παρέχει µια διεπαφή (interface) ανάµεσα στο υλισµικό και στα προγράµµατα εφαρµογών/χρηστών.
ΕΙΣΑΓΩΓΗ Υλισµικό (Hardware) Επεξεργαστής-ΚΜΕ (Processor, CPU): εκτέλεση εντολών Μνήµη (Memory): προσωρινή αποθήκευση πληροφοριών Μονάδες ε/ε (I/O devices): Μονάδες δίσκων: Μόνιµη αποθήκευση πληροφοριών
Διαβάστε περισσότερα