Vorlesung Paralleles Rechnen

Waren Anfang des Jahrtausends parallele Systeme noch dem High-Performance-Computing (HPC) vorbehalten, so haben sie mit dem Hardware-Trend hin zu Multicoresytemen mittlerweile auch im Desktop-PC und Serverbereich Einzug gehalten. Um diese Hardwareplattformen optimal auszunutzen sind neue Programmierparadigmen, -sprachen und -werkzeuge notwendig.
Im HPC-Bereich hat die Vernetzung von Arbeitsplatzrechnern mittels leistungsfähiger Kommunikationstechnologien (z. B. Gigabit Ethernet, InfiniBand) zu einer preisgünstigen Plattform für parallele Anwendungen geführt – den sogenannten Clustern. Dabei handelt es sich heutzutage meist um hybride Systeme, d.h. um vernetzte Multicoresysteme. Ein weiterer aktueller Trend ist die Auslagerung rechenintensiver Anwendungen auf die Grafikkarte.
Die Vorlesung stellt die Konzepte der Parallelverarbeitung vor und legt ihren Schwerpunkt auf den Bereich Cluster Computing. Es werden sowohl Programmierparadigmen für Cluster Computing als auch Systemansätze zur Unterstützung paralleler Anwendungen in Clustern wie z.B. das Ressourcenmanagment besprochen.


Veranstalter

Prof. Dr. Bettina Schnor, Institut für Informatik
Steffen Christgau, Institut für Informatik


Ort/Termine

Am Freitag, von 10:00 Uhr bis 12:00 Uhr, wird die Vorlesung im Raum 03.06.H01 gehalten. Am Dienstag, von 12:00 Uhr bis 14:00 Uhr, wird die Übung im Raum 03.04.1.03 stattfinden.

Aktuelles

07.09.2012, 10:00 Uhr - 12:00 Uhr

Nachklausur im Raum 03.04.1.02

22.08.2012, 12:00 Uhr - 13:00 Uhr

Klausureinsicht im Raum 03.04.2.19

16.07.2012, 13:00 Uhr - 15:00 Uhr

Klausur im Raum 03.06.H10

Materialien


Themenliste

  • Parallelrechnerarchitekturen
  • Programmiermodelle für parallele Anwendungen
  • Programmiermodelle für Multicoresysteme: Beispiel POSIX-Threads, OpenMP, Parallel JavaScript
  • Programmiermodelle für Cluster Computing: Beispiel MPI
  • Scientific Computing: Beispiel: Fortran 90 und High Performance Fortran
  • Programmiermodelle für Grafikkarten: CUDA, OpenCL
  • Graphenbasierte Modellierung von Parallelen Programmen
  • Leistungsanalyse von parallelen Anwendungen
  • Clustertechnologie: Netzwerke, High-Performance Computing

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.
  • Jakub Kurzak, David A. Bader, Jack Dongarra (Eds): Scientific Computing with Multicore and Accelerators, CRC Press Taylor & Francis Group