Modulcode: | A5.3.6 |
Englische Bezeichnung: | |
Modulverantwortliche(r): | Prof. Dr. Wilhelm Hasselbring |
Turnus: | unregelmäßig (SS09 SS10) |
Präsenzzeiten: | 4PÜ |
ECTS: | 8 |
Workload: | 240 Std. Praktikumsarbeit |
Dauer: | ein Semester |
Modulkategorien: | A5 (Sonstige) |
Lehrsprache: | Deutsch |
Voraussetzungen: |
Ausgehend von parallelen Programmiermodellen werden insbesondere bewährte Muster für die parallele und verteilte Programmierung vertieft. Die theoretischen Konzepte werden im Praktikum auf unterschiedlichen Hardware-Plattformen (Multicore, Rechner-Grid) umfassend vertieft.
Die Studierenden erlernen Softwaretechniken zur Entwicklung paralleler und verteilter Systeme. Insbesondere wird die praktische Umsetzung von etablierten Mustern der Programmierung paralleler und verteilter Systeme in den Übungen auf unterschiedlichen Hardware-Plattformen (Multicore, Rechner-Grid) erlernt.
Ein paralleles Programmiermodell liefert eine spezifische Sicht auf ein paralleles System, welches aus unterschiedlichen Sichten betrachtet werden kann. Unterscheidungskriterien sind z.B. die Ebene der Parallelität (Anweisung, Schleife, Funktion, Programmkomponente, Betriebssystemprozess etc.), die Art der Spezifikation (implizit vs. explizit, statische vs. dynamische Prozesserzeugung), die Art der Kommunikation (Nachrichten, gemeinsamer Speicher) und die Art der Synchonisation. Muster zur parallelen und verteilten Programmierung beschreiben dann wie die Programmiermodelle sinnvoll eingesetzt werden können.
Gute Programmierkenntnisse.
Zwischenprüfungen zu den Übungen, Praktikumsergebnis, Abschlusspräsentation.
M. Ben-Ari: Principles of Concurrent and Distributed Programming. Addison-Wesley, second edition, 2006
Timothy G. Mattson, Beverly A. Sander, and Berna L. Massingill: Patterns for Parallel Programming. Addison-Wesley, 3rd edition, September 2007.
http://se.informatik.uni-kiel.de/