|
|
Fakultät für Informatik der Technischen Universität München Informatik X: Rechnertechnik und Rechnerorganisation / Parallelrechnerarchitektur Prof. Dr. Arndt Bode , Prof. Dr. Hans Michael Gerndt |
|
| Home | Adressen | Personen | Forschung | Lehrveranstaltungen | ||
|
| Bereich: | Informatik II ,,Technische Informatik und
systemnahe Programmierung``, 2.1 ,,Rechnerbausteine und Rechnerarchitektur``, Wahlpflicht-Praktikum |
|---|---|
| Ort und Zeit: | wird noch bekannt gegeben |
| Stundenzahl: | 6 |
| Beginn: | wird noch bekannt gegeben |
| Vorbesprechung: | 31. Januar 2001, 15 Uhr, Seminarraum S2221 |
Cluster-Architekturen, die in diesem Praktikum im Vordergrund stehen, sind sowohl in der kommerziellen als auch in der wissenschaftlichen Datenverarbeitung weit verbreitet. Moderne Cluster bestehen aus Arbeitsplatzrechnern, die selbst symmetrische Multiprozessorsysteme (SMP-Rechner) sind, und die über ein leistungsfähiges Verbindungsnetzwerk miteinander kommunizieren können.
Das Praktikum setzt auf Grundkenntnissen aus dem Bereich Rechnerarchitektur/Parallelrechner auf und verknüpft die Aspekte der parallelen Programmierung mit den Aspekten der Realisierung verteilter Anwendungen. Die Teilnehmer lernen in diesem Praktikum die grundlegenden Programmierparadigmen beider Bereiche im Detail kennen.
Die Programmierung von Clustern aus gekoppelten SMP-Rechnern erfolgt mit dem hybriden Programmiermodell, bei dem auf der Basis von MPI ein verteiltes Programm realisiert wird. Die Prozesse, die den Knoten zugeordnet sind, werden zusätzlich mit OpenMP bzw. durch explizite Thread-Programmierung parallelisiert, so dass die volle Leistung der SMP-Rechner genutzt werden kann. Beide Programmierschnittstellen werden im Rahmen des Praktikums vorgestellt und an zwei Übungsaufgaben, der Wärmeausbreitung in einem festen Körper und der Simulation eines Billardspiels, eingesetzt werden. Da beide Schnittstellen standardisiert sind, können die erworbenen Kenntnisse auf allen Hochleistungsarchitekturen erfolgreich eingesetzt werden.
Die Anwendungen werden in Java realisiert, um die Vorteile objektorientierter Sprachen und die Sprachmittel zur Realisierung verteilter Anwendungen nutzen zu können. Durch den Einsatz von Java können die erlernten Programmierkonzepte auch direkt auf andere Anwendungsbereiche übertragen werden.
Die entwickelten Anwendungen sollen mit einem grafischen Frontend ausgestattet werden, das eine Programmsteuerung und eine Visualisierung der berechneten Daten ermöglicht. Hierzu sollen moderne Middleware-Systeme wie CORBA, RMI oder Jini eingesetzt werden.
Begleitend zur Programmierung der Übungsaufgaben finden wöchentliche Treffen statt. Es werden Vorträge von den Veranstaltern gehalten, die in die Aufgabenstellung, die Programmierumgebung und die Programmierschnittstellen einführen.
Die Übungsaufgaben werden von den Praktikumsteilnehmern in Gruppen mit jeweils zwei Studenten gelöst. Die Programmierung erfolgt auf einem Linux-Cluster am Leibniz-Rechenzentrum (LRZ) bzw. auf dem SUN-Cluster in der Informatikhalle. Die Fortschritte sowie die Resultate werden der ganzen Gruppe in Form von Kurzvorträgen vorgestellt.
Neben den gemeinsamen Treffen besteht die Möglichkeit, über ein eigenes WWW-Diskussionsforum Fragen und Erfahrungen mit anderen Praktikumsteilnehmern und den Betreuern zu besprechen.
Nähere Hinweise können beim Praktikumsleiter (email: gerndt@in.tum.de) erfragt werden.