Parallel Computing II

Typ Vorlesung mit integrierter Übung
Dozent H. Martin Bücker
Credit points 6 ECTS = 4 SWS
Friedolin Search in Friedolin

Beschreibung

Die Geschwindigkeit von Rechnern konnte über mehrere Jahrzehnte durch eine Erhöhung der Taktrate von Prozessoren erzielt werden. Der Benutzer einer Rechenanlage brauchte daher lediglich auf die nächste Rechnergeneration zu warten und durfte so eine höhere Leistung erwarten, ohne seine Algorithmen und Programme zu verändern. Seit etwa dem Jahre 2005 stagniert jedoch die Taktrate. Heute und in Zukunft wird daher ein Leistungsgewinn nicht mehr durch eine weitere Erhöhung der Taktrate erzielt, sondern durch eine Vervielfachung der Recheneinheiten, die gemeinsam zur Lösung desselben Problems eingesetzt werden. Solche Parallelrechner waren früher eine absolute Rarität, stellen heute jedoch den alltäglichen Normalfall dar. Allerdings sind die Benutzer von Parallelrechnern gezwungen, ihre Algorithmik und Implementierungen gegenüber ihren seriellen Entsprechungen (oft erheblich) zu verändern. Die beiden Vorlesungen Parallel Computing I und II sind als Einstieg in die Nutzung von Parallelrechnern konzipiert. Diese beiden Lehrveranstaltungen können in beliebiger Reihenfolge besucht werden. Teil II behandelt skalierbare Algorithmen und setzt in den praktischen Übungen den Fokus auf die parallele Programmierung von Rechnern mit gemeinsamem Speicher (OpenMP) und Grafikkarten (CUDA).

Studiengänge

Diese einführende Vorlesung ist geeignet für Studierende zu Beginn des Masterstudiums, kann aber auch am Ende eines Bachelorstudiums gehört werden. Kenntnisse in serieller Programmierung werden vorausgesetzt.

M.Sc. Computational and Data Science Pflichtbereich
M.Sc. Informatik (V2016) Wahlpflichtbereich Informatik und Vertiefung Informatik
M.Sc. Informatik (V2021) High-Performance Computing I-V (6 LP)
B.Sc. Informatik Wahlpflichtbereich Informatik

Die Veranstaltung ist auch geeignet für Studierende aus Mathematik und anderen naturwissenschaftlichen Fachrichtungen.