2 Εισαγωγήδοση, κοντά στις θεωρητικά µέγιστες τιµές. Οι συστοιχίες συµµετρικών πολυεπεξεργαστικών στοιχείων(SMP clusters) αποτελούν τον πλέον δηµοϕιλή εκπρόσωπο DSM αρχιτεκτονικής και χρησιµοποιούνταιευρέως σε κέντρα υπερυπολογιστών τόσο για ερευνητικούς όσο και για εµπορικούς σκοπούς. Οι SMPσυστοιχίες συνδυάζουν την επεκτασιµότητα των απλών συστοιχιών, ενώ παρέχουν επιπλέον τη δυνατότηταπολυεπεξεργασίας µέσω µοιραζόµενης µνήµης στο εσωτερικό κάθε κόµβου. Για αυτό το είδοςτων αρχιτεκτονικών, υπάρχει ζωηρό ερευνητικό ενδιαϕέρον όσον αϕορά στη διερεύνηση εναλλακτικώνπαράλληλων προγραµµατιστικών µοντέλων.Παραδοσιακά, το µοντέλο ανταλλαγής µηνυµάτων (message passing model) έχει επικρατήσει ως defacto προσέγγιση παραλληλοποίησης για πληθώρα αρχιτεκτονικών υψηλών επιδόσεων, καθώς επιτυγχάνειυψηλή απόδοση και επεκτασιµότητα (scalability) σε επιχειρησιακές συνθήκες. Ένας σηµαντικόςόγκος επιστηµονικών εϕαρµογών έχει ήδη παραλληλοποιηθεί µε επιτυχία µε τη βοήθεια βιβλιοθηκώνανταλλαγής µηνυµάτων, όπως κυρίως η διεπαϕή Message Passing Interface (MPI) αλλά και λιγότερο ηβιβλιοθήκη <strong>Parallel</strong> Virtual Machine (PVM), συχνά παρέχοντας γραµµικές ή ακόµα και υπερ-γραµµικές(super-linear) επιταχύνσεις. Μεγάλο ποσοστό του κώδικα που έχει παραλληλοποιηθεί µε το µοντέλοανταλλαγής µηνυµάτων αϕορά αλγορίθµους επαναληπτικής ϕύσεως (iterative algorithms), δηλαδή κατάκανόνα ϕωλιασµένους βρόχους που διατρέχουν ένα χώρο επαναλήψεων εκτελώντας υπολογισµούς.Η παραλληλοποίηση των αλγορίθµων αυτών µέσω ανταλλαγής µηνυµάτων µπορεί να επιτευχθεί βάσεικάποιας στρατηγικής διαµέρισης του χώρου των επαναλήψεων και καταµερισµού της εργασίας. Προςτην κατεύθυνση αυτή ιδιαίτερα χρήσιµος έχει αποδειχθεί ο µετασχηµατισµός υπερκόµβων (tiling trans<strong>for</strong>mation),ο οποίος έχει ήδη αποτελέσει αντικείµενο εκτενούς µελέτης στη σύγχρονη διεθνή βιβλιογραϕία.Εντούτοις, σε αρχιτεκτονικές κατανεµηµένης µοιραζόµενης µνήµης ολοένα και συχνότερα εξετάζεταιη χρήση υβριδικών µοντέλων προγραµµατισµού (hybrid programming models). Γενικά, τα υβριδικάµοντέλα διατηρούν την επικοινωνία µέσω ανταλλαγής µηνυµάτων µεταξύ των διαϕορετικών πολυεπεξεργαστικώνκόµβων, αλλά καταϕεύγουν σε πολυνηµατική επεξεργασία µέσω µοιραζόµενης µνήµηςστο εσωτερικό κάθε κόµβου. ∆ιαισθητικά, τα µοντέλα αυτά ϕαίνεται να ταιριάζουν καλύτερα στην υποδοµήτων αρχιτεκτονικών κατανεµηµένης µοιραζόµενης µνήµης απ' ότι τα αντίστοιχα µοντέλα ανταλλαγήςµηνυµάτων, γιατί απαλείϕουν τη χρησιµοποίηση της χρονοβόρας επικοινωνίας µέσω µηνυµάτωνστις περιπτώσεις που υπάρχει η δυνατότητα γρηγορότερης πρόσβασης σε µοιραζόµενο χώρο µνήµης.Όµως, στην πράξη η υβριδική παραλληλοποίηση αποτελεί ανοιχτό ερευνητικό ζήτηµα, καθώς η αξιοποίησητης υϕιστάµενης αρχιτεκτονικής µέσω υβριδικών µοντέλων είναι σύνθετη και µη τετριµµένηδιαδικασία. Έτσι, κατά γενική οµολογία τα υβριδικά µοντέλα παραλληλισµού στην παρούσα ϕάση δενείναι τόσο διαδεδοµένα όσο το σύνηθες προγραµµατιστικό µοντέλο ανταλλαγής µηνυµάτων, που επιπλέονυποστηρίζεται από υψηλά βελτιστοποιηµένες βιβλιοθήκες επικοινωνίας.
1.2 Επισκόπηση Σχετικής Βιβλιογραϕίας 3Στο πλαίσιο της παρούσας εργασίας προτείνουµε αποδοτικά µοντέλα παραλληλοποίησης αλγορίθµωνϕωλιασµένων βρόχων, ήτοι ένα µοντέλο που χρησιµοποιεί ανταλλαγή µηνυµάτων, καθώς καιεναλλακτικά υβριδικά µοντέλα λεπτού και χονδρού κόκκου. Προς τη διασϕάλιση της υψηλής επίδοσηςτων παράλληλων µοντέλων προτείνουµε αϕενός µεθόδους για τον καθορισµό κατάλληλης τοπολογίαςαπεικόνισης των διεργασιών και αϕετέρου τεχνικές εξισορρόπησης του ϕορτίου µεταξύ των νηµάτωνγια το υβριδικό µοντέλο χονδρού κόκκου. Πιο συγκεκριµένα, υποθέτουµε αλγόριθµο ϕωλιασµένωνβρόχων διάστασης N + 1, που παραλληλοποιείται ως προς τις N εξωτερικές διαστάσεις και υλοποιείσειριακή εκτέλεση µε τη µέθοδο της σωλήνωσης (pipelining) κατά µήκος της πλέον εσωτερικής. Αποδεικνύουµεότι η επιλογή µιας κατάλληλης τοπολογίας για το N-διάστατο πλέγµα διεργασιών µπορείνα µειώσει σηµαντικά το συνολικό χρόνο εκτέλεσης και παρέχουµε µια αυτόµατη µέθοδο για τον καθορισµόµιας τέτοιας τοπολογίας. Επιπλέον, συγκρίνουµε διάϕορα υβριδικά µοντέλα λεπτού και χονδρούκόκκου και αναδεικνύουµε την αναγκαιότητα αποδοτικής εξισορρόπησης του ϕορτίου µεταξύ των νη-µάτων, ώστε να υπερκεραστούν οι ενδεχόµενοι περιορισµοί της βιβλιοθήκης ανταλλαγής µηνυµάτων.Αµϕότερες οι βελτιστοποιήσεις µπορούν εύκολα να υλοποιηθούν είτε σε επίπεδο µεταγλωττιστή είτε ωςσυναρτήσεις βιβλιοθήκης. Τέλος, συγκρίνουµε όλα τα µοντέλα, δίνοντας έµϕαση στη σύγκριση µεταξύτου µοντέλου ανταλλαγής µηνυµάτων και του υβριδικού µοντέλου χονδρού κόκκου, ώστε να εξαγάγουµεπιο γενικά συµπεράσµατα για τον παράλληλο προγραµµατισµό αρχιτεκτονικών κατανεµηµένηςµοιραζόµενης µνήµης.1.2 Επισκόπηση Σχετικής ΒιβλιογραϕίαςΟι ϕωλιασµένοι βρόχοι κατέχουν ήδη από τα τέλη της δεκαετίας του '80 κοµβικό ρόλο στην παραλληλοποίησηυπολογιστικά απαιτητικών εϕαρµογών. Εµπειρικά έχει διαπιστωθεί πως πολλοί αλγόριθµοικαταναλώνουν το µεγαλύτερο τµήµα του χρόνου εκτέλεσής τους µε τη διάσχιση δοµών επαναληπτικήςϕύσεως, όπως είναι οι ϕωλιασµένοι βρόχοι, αναδεικνύοντας έτσι τους τελευταίους σε βασικούςστόχους της προγραµµατιστικής βελτιστοποίησης. Είναι κοινός τόπος πως η κατάλληλη αναδιάταξητης ακολουθίας των βρόχων ή η αξιοποίηση της ιεραρχίας µνήµης κατά την προσπέλαση δεδοµένων σεϕωλιασµένους βρόχους µπορούν να επιταχύνουν σηµαντικά το χρόνο εκτέλεσης ενός προγράµµατος.Ως ϕυσικό επακόλουθο, η παραλληλοποίηση αλγορίθµων ϕωλιασµένων βρόχων αποτελεί ένα ιδιαίτεραδηµοϕιλές αντικείµενο της διεθνούς βιβλιογραϕίας, απόρροια της πρακτικής αξίας του ζητήµατος γιατην επιτάχυνση πολλών πραγµατικών εϕαρµογών. Μάλιστα, οι εξαρτήσεις που επιβάλλονται από τησηµασιολογία του αλγορίθµου κατά την προσπέλαση και τον υπολογισµό των δεδοµένων έχουν µοντελοποιηθείµαθηµατικά [Ban88, WL91b, Zig94], διακρίνοντας τους βρόχους σε DOALL, όπου υπάρχειεγγενής ανεξαρτησία µεταξύ των διαϕορετικών επαναλήψεων του βρόχου, και σε DOACROSS, όπου
- Page 1: ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟ
- Page 4 and 5: ................................Ν
- Page 7 and 8: ΠερίληψηΗ Παράλληλ
- Page 9 and 10: AbstractParallel Processing is a ma
- Page 11 and 12: ΠεριεχόµεναΠερίλη
- Page 13 and 14: ΠΕΡΙΕΧΟΜΕΝΑxi5.2 Εξι
- Page 15 and 16: Κατάλογος Σχηµάτων
- Page 17 and 18: ΚΑΤΑΛΟΓΟΣ ΣΧΗΜΑΤΩΝ
- Page 19 and 20: ΚΑΤΑΛΟΓΟΣ ΣΧΗΜΑΤΩΝ
- Page 21: ΚΑΤΑΛΟΓΟΣ ΣΧΗΜΑΤΩΝ
- Page 24 and 25: xxiiΚΑΤΑΛΟΓΟΣ ΠΙΝΑΚΩ
- Page 27 and 28: ΠρόλογοςΗ εργασία
- Page 29: ΚΕΦΑΛΑΙΟ 1Εισαγωγή
- Page 33 and 34: 1.2 Επισκόπηση Σχετι
- Page 35 and 36: 1.3 Συµβολή της ∆ιατ
- Page 37 and 38: 1.4 Οργάνωση της ∆ια
- Page 39 and 40: DOI: DOI: 1.5 ∆ηµοσιευµέ
- Page 41 and 42: ΚΕΦΑΛΑΙΟ 2Παράλληλ
- Page 43 and 44: π2.1 Αρχιτεκτονικές
- Page 45 and 46: 2.1 Αρχιτεκτονικές Π
- Page 47 and 48: 2.2 Μοντέλα Παράλληλ
- Page 49 and 50: 2.2 Μοντέλα Παράλληλ
- Page 51 and 52: 2.2 Μοντέλα Παράλληλ
- Page 53 and 54: 2.2 Μοντέλα Παράλληλ
- Page 55 and 56: 2.2 Μοντέλα Παράλληλ
- Page 57 and 58: 2.2 Μοντέλα Παράλληλ
- Page 59 and 60: ΚΕΦΑΛΑΙΟ 3Αλγοριθµ
- Page 61 and 62: 3.1 Αλγοριθµικό Μοντ
- Page 63 and 64: 3.1 Αλγοριθµικό Μοντ
- Page 65 and 66: 3.2 Βασικές Παραδοχέ
- Page 67 and 68: 3.2 Βασικές Παραδοχέ
- Page 69 and 70: 3.3 Παράδειγµα: Μερι
- Page 71 and 72: 3.3 Παράδειγµα: Μερι
- Page 73 and 74: 3.3 Παράδειγµα: Μερι
- Page 75 and 76: 3.3 Παράδειγµα: Μερι
- Page 77 and 78: 3.3 Παράδειγµα: Μερι
- Page 79 and 80: 3.3 Παράδειγµα: Μερι
- Page 81 and 82:
ΚΕΦΑΛΑΙΟ 4Παράλληλ
- Page 83 and 84:
4.1 Μετασχηµατισµός
- Page 85 and 86:
4.1 Μετασχηµατισµός
- Page 87 and 88:
4.1 Μετασχηµατισµός
- Page 89 and 90:
4.1 Μετασχηµατισµός
- Page 91 and 92:
4.2 Απεικόνιση σε ∆ι
- Page 93 and 94:
4.2 Απεικόνιση σε ∆ι
- Page 95 and 96:
4.2 Απεικόνιση σε ∆ι
- Page 97 and 98:
4.2 Απεικόνιση σε ∆ι
- Page 99 and 100:
4.3 Προσδιορισµός Το
- Page 101 and 102:
4.4 Ισοδύναµα: Προσδ
- Page 103 and 104:
4.5 Χρονοδροµολόγησ
- Page 105 and 106:
4.5 Χρονοδροµολόγησ
- Page 107 and 108:
ΚΕΦΑΛΑΙΟ 5Υβριδικό
- Page 109 and 110:
5.1 Υβριδικό Μοντέλο
- Page 111 and 112:
5.1 Υβριδικό Μοντέλο
- Page 113 and 114:
5.1 Υβριδικό Μοντέλο
- Page 115 and 116:
5.1 Υβριδικό Μοντέλο
- Page 117 and 118:
5.1 Υβριδικό Μοντέλο
- Page 119 and 120:
5.1 Υβριδικό Μοντέλο
- Page 121 and 122:
LLL5.1 Υβριδικό Μοντέ
- Page 123 and 124:
LL5.1 Υβριδικό Μοντέλ
- Page 125 and 126:
LL5.2 Εξισορρόπηση Φο
- Page 127 and 128:
5.2 Εξισορρόπηση Φορ
- Page 129 and 130:
5.2 Εξισορρόπηση Φορ
- Page 131 and 132:
5.2 Εξισορρόπηση Φορ
- Page 133 and 134:
5.2 Εξισορρόπηση Φορ
- Page 135 and 136:
5.2 Εξισορρόπηση Φορ
- Page 137 and 138:
5.3 Σύγκριση Μοντέλο
- Page 139 and 140:
5.3 Σύγκριση Μοντέλο
- Page 141 and 142:
5.3 Σύγκριση Μοντέλο
- Page 143 and 144:
ΚΕΦΑΛΑΙΟ 6Πειραµατ
- Page 145 and 146:
6.1 Μετροπρογράµµατ
- Page 147 and 148:
6.1 Μετροπρογράµµατ
- Page 149 and 150:
6.3 Τοπολογία ∆ιεργ
- Page 151 and 152:
6.3 Τοπολογία ∆ιεργ
- Page 153 and 154:
6.3 Τοπολογία ∆ιεργ
- Page 155 and 156:
6.3 Τοπολογία ∆ιεργ
- Page 157 and 158:
6.3 Τοπολογία ∆ιεργ
- Page 159 and 160:
6.3 Τοπολογία ∆ιεργ
- Page 161 and 162:
6.3 Τοπολογία ∆ιεργ
- Page 163 and 164:
6.3 Τοπολογία ∆ιεργ
- Page 165 and 166:
6.3 Τοπολογία ∆ιεργ
- Page 167 and 168:
6.4 Εξισορρόπηση Φορ
- Page 169 and 170:
6.4 Εξισορρόπηση Φορ
- Page 171 and 172:
6.4 Εξισορρόπηση Φορ
- Page 173 and 174:
6.4 Εξισορρόπηση Φορ
- Page 175 and 176:
6.4 Εξισορρόπηση Φορ
- Page 177 and 178:
6.4 Εξισορρόπηση Φορ
- Page 179 and 180:
6.4 Εξισορρόπηση Φορ
- Page 181 and 182:
L6.4 Εξισορρόπηση Φο
- Page 183 and 184:
6.4 Εξισορρόπηση Φορ
- Page 185 and 186:
6.5 Γενική Αξιολόγησ
- Page 187 and 188:
6.5 Γενική Αξιολόγησ
- Page 189 and 190:
6.5 Γενική Αξιολόγησ
- Page 191 and 192:
6.5 Γενική Αξιολόγησ
- Page 193 and 194:
6.6 Συµβολή της ∆ιατ
- Page 195 and 196:
6.6 Συµβολή της ∆ιατ
- Page 197 and 198:
ΚΕΦΑΛΑΙΟ 7Συµπεράσ
- Page 199 and 200:
L171κόστη υπολογισµο
- Page 201 and 202:
• Οµοίως, η διασϕάλ
- Page 203 and 204:
ΠΑΡΑΡΤΗΜΑ ΑΤο Πρότ
- Page 205 and 206:
L177•¦©¦§kkkC;:M+:M¡"@£¨!L
- Page 207 and 208:
ΠΑΡΑΡΤΗΜΑ ΒΤο Πρότ
- Page 209 and 210:
181τρόπο), ¥§¦M¡§N¢¥ (
- Page 211 and 212:
ΠΑΡΑΡΤΗΜΑ ΓΣχεδίασ
- Page 213 and 214:
LLLLRRRRLRRRRRRRRPLLPLPLPLPLPLPLPLP
- Page 215 and 216:
LLLRRRPLPLPLPLPLRRRRRvvvvvΓ.2 Έλ
- Page 217 and 218:
ενώ στο αρχείο mpid/ch2
- Page 219 and 220:
ŽN¡¤© Ž¢¡0LLŽN¡¤£¦£NhO
- Page 221 and 222:
L©U©¦¤N©¦©¦$u¡¤siN¦¦$u$
- Page 223 and 224:
LkLLL©U©¦¤N©¦©¦$u¡¤siN¦
- Page 225 and 226:
¥¥LLLΓ.4 Ασύγχρονη Απ
- Page 227 and 228:
ƒƒνωνίας στην οποί
- Page 229 and 230:
L££££££L£RvΓ.6 Λήψη 201
- Page 231 and 232:
LLLLLLƒyP=¡¥u§$¥§¦¡¤£££
- Page 233 and 234:
©¥…w¥¤km¡¤¦¢ŽN¡¤© Ž
- Page 235 and 236:
LƒLLLLRLLRwRRRvRvRvRvRR{{LLΓ.6 Λ
- Page 237 and 238:
Γ.6 Λήψη 209η LFτου handle
- Page 239 and 240:
LΓ.6 Λήψη 211να επισηµ
- Page 241 and 242:
eLΓ.6 Λήψη 213∆ιεργασ
- Page 243 and 244:
Γ.6 Λήψη 215∆ιεργασί
- Page 245 and 246:
£££iLλήψης στην ουρ
- Page 247 and 248:
Βιβλιογραϕία[ABRY03][AC
- Page 249 and 250:
ΒΙΒΛΙΟΓΡΑΦΙΑ 221[CM95][
- Page 251 and 252:
ΒΙΒΛΙΟΓΡΑΦΙΑ 223[HCF97]
- Page 253 and 254:
ΒΙΒΛΙΟΓΡΑΦΙΑ 225[KM92][
- Page 255 and 256:
ΒΙΒΛΙΟΓΡΑΦΙΑ 227[RW03][
- Page 257 and 258:
ΒΙΒΛΙΟΓΡΑΦΙΑ 229[Σωτ
- Page 259 and 260:
ΕυρετήριοΑανάλυση
- Page 261 and 262:
Ευρετήριο 233ρουτίν
- Page 263 and 264:
Ευρετήριο 235MPID CH Eager