Vorlesung Paralleles Rechnen
Die Vernetzung von Arbeitsplatzrechnern hat zu einer preisgünstigen Plattform für parallele Anwendungen geführt
– den sogenannten Clustern. Mit der Entwicklung von leistungsfähigen Kommunikationstechnologien (z. B. Gigabit
Ethernet, Myrinet, Quadrics, InfiniBand) sind Cluster auch für den Bereich High Performance Computing und
E-Commerce interessant geworden und stehen dort aufgrund ihres Preis/Leistungsverhältnis in direkter Konkurrenz
zu traditionellen Parallelrechnern. Die Vorlesung stellt die Konzepte der Parallelverarbeitung vor und legt ihren
Schwerpunkt auf den Bereich Cluster Computing. Es werden Systemansätze zur Unterstützung paralleler Anwendungen
in Clustern besprochen, z.B. Ressourcenmanagment, Lastverteilung und Fehlertoleranz.
U.a. werden folgende Fragestellungen behandelt:
-
Wer oder was ist ein Beowulf?
-
Wieso ist Gamma um mehr als ein Epsilon besser als IP?
-
Welche Parallelisierungskonzepte gibt es?
-
Gibt es bessere Schedulingverfahren als First Come First Served für parallele Anwendungen?
-
Wie vermeide ich den Ping-Pong-Effekt bei der Lastbalancierung?
-
Wie erreicht man superlinearen Speedup?
Veranstalter
Prof. Dr. Bettina Schnor, Institut für Informatik
Ort/Termine
Am Donnerstag, von 14:00 Uhr bis 16:00 Uhr, wird die Vorlesung im Raum 03.04.1.02 gehalten. Am Donnerstag,
von 16:00 Uhr bis 18:00 Uhr, wird die Übung im Raum 03.04.1.03 stattfinden.
Aktuelles
29.03.2011, 09:30 Uhr - 11:30 Uhr
Nachklausur im Raum 03.06.H02
17.03.2011, 12:00 Uhr - 13:00 Uhr
Klausureinsicht im Raum 03.04.2.19
24.02.2011, 12:30 Uhr - 14:30 Uhr
Klausur im Raum 03.01.H09
Materialien
Themenliste
-
Einführung: Motivation und Terminologie
-
Hardware:
-
Parallelrechnerarchitekturen
-
Clustertechnologie
-
Konzepte paralleler Anwendungen
-
Ebenen der Parallelität
-
Programmiermodelle für parallele Anwendungen
-
Graphenbasierte Modellierung von parallelen Programmen
-
Das nachrichtenbasierte Programmiermodell
-
Beispiel: Message Passing System (MPI)
-
Das datenparallele Programmiermodell
-
Beispiel: Fortran 90, High Performance Fortran
-
Das Programmiermodell des gemeinsamen Speichers
-
Leistungsanalyse
-
Leistungsmaße wie z.B. Speedup, Effizienz
-
Benchmarks
-
Top 500
-
Scheduling und Mapping paralleler Anwendungen
-
Space-Sharing-Strategien
-
Time-Sharing-Strategien/Gang-Scheduling
-
Metacomputing/Grid Computing
-
Beispielsysteme: Globus, Legion, Nimrod
-
Fehlertoleranz
-
Cluster-Monitoring
-
Checkpointing und Checkpointing-Protokolle
-
Migrationssysteme: Condor, PBeam, CoCheck
-
Parallele Ein-/Ausgabe
Anforderungen
Es müssen studienbegleitend mindestens 50% der Hausaufgabenpunkte erreicht werden, um zur abschließenden Prüfung
zugelassen zu werden. Die abschließende Prüfung muss mit mindestens mit 4.0 bestanden werden.
Literatur
-
Michael J. Quinn: Parallel Programming, Mcgraw-Hill Higher Education, 2004.
-
Peter Sanders, Thomas Worsch: Parallele Programmierung mit MPI, Logos Verlag, 1997.
-
Ian Foster: Designing and Building Parallel Programs, Addison Wesley, 1995.
-
Hwang/Xu: Scalable Parallel Computing: Technology, Architecture, Programming, Boston, WCB/McGraw-Hill, 1998.