Vorlesung Parallele Programmierung

Ort: Do 14-16, SR 013, Geb. 45. Erste Vorlesung: 24.4.98

Dozent: Peter Sanders, Geb. 46, Raum 315, Tel. 0681 9325 115, sanders@mpi-sb.mpg.de

Der Einsatz vieler Prozessoren zur gemeinsamen Lösung eines Problems ist einer der wichtigsten Ansätze zur Erhöhung der Leistung von Informatikanwendungen. In dieser Vorlesung sollen praktisch wichtige Ansätze zur Erstellung paralleler Programme vermittelt werden. Das geht von der Analyse der Problemstellung über den Entwurf eines konkreten Algorithmus bis zur Umsetzung in ein effizientes und portables Programm. In einer vorlesungsbegleitenden Übung können diese Konzepte auf dem MPI-eigenen Cluster mit 16 Prozessoren praktisch erprobt werden. Dabei wird das "Message Passing Interface" (MPI) eingesetzt; ein Standard für die Programmierung nachrichtengekoppelter Parallelrechner, der seinen Erfolg einem guten Kompromi\3 zwischen Portabilität, Mächtigkeit und Effizienz verdankt.

Grundlagen

Aufbau heutiger Parallelrechner, Analyse paralleler Algorithmen, Programmierung mit dem Message Passing Interface. Grundlegende Parallelisierungsansätze: Parallelisierung durch Datenzerlegung, Erhöhen der Kommunikationsgranularität, Latenzzeitverdeckung, systolische Algorithmen, parallele lineare Algebra, kollektive Kommunikationsmuster, Sortieralgorithmen, Lastverteilungsalgorithmen, parallele Datenstrukturen. Komplexere Anwendungen: Airline und Railway Crew Scheduling, Klimasimulation. Andere Programmiermodelle:

Zielgruppe und Vorkenntnisse

Informatiker im Hauptstudium sowie ggf. Ingenieure und Naturwissenschaftler, die an rechenintensiven Forschungsprojekten mitwirken. Fur die vorlesungsbegleitenden Übungen wird die Beherrschung von C oder C++ sowie Grundkenntnisse im Umgang mit Unix-Workstations erwartet.

Literatur

-
P. Sanders and T. Worsch. Parallele Programmierung mit MPI: ein Praktikum. Logos-Verlag, Berlin, 1997. Entstanden aus den Unterlagen zu einem Praktikum an der Universität Karlsruhe. Das Buch kann von Vorlesungsteilnehmern zu einem ermäßigten Preis von 27 DM erworben werden.

-
V. Kumar, A. Grama, A. Gupta und G. Karypis. Introduction to Parallel Computing. Design and Analysis of Algorithms. Benjamin/Cummings, 1994.

-
Allgemeine Information zum Message Passing Interface findet man im WWW über die Homepage des MPI Forums.

-
Die Dokumentation von MPI-1 liegt in der Version 1.2 vor. Sie ergibt sich aus Version 1.1 durch die Berücksichtigung einiger Klarstellungen, die im MPI-2 Standard enthalten sind. MPI-1.1 als Postscript-Version und als HTML-Version. (Kopien in Karlsruhe)

-
User's guide for mpich

-
Seit Ende Juli 97 liegt auch die Dokumentation von MPI-2 offiziell in der Version 2.0 vor. Bislang sind die Errata sehr kurz. Das MPI-2 Journal of Development enthält Dinge, die am Ende doch nicht in den MPI-2 Standard aufgenommen wurden.

Materialien zur Vorlesung

Last modified: Fri Apr 17 14:30:00 MET DST 1998