Institut für Informatik | |
Parallele Algorithmen mit OpenCL SS 2013 |
Dozent | Henning Wenke M.Sc. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Übungsleiter | Sascha Kolodzey, B.Sc. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Tutoren | Sascha Kolodzey, B.Sc.,Nils Vollmer, B.Sc. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Vorlesung |
mittwochs, 10:00 - 12:00 Uhr, Raum 31/449a |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Übung |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Inhalt | Parallele Algorithmen sind primär für sehr rechenaufwändige oder echtzeitkritische Berechnungen interessant. Sie formulieren die Lösung eines einzigen Problems dergestalt, dass viele datenverarbeitende Einheiten gleichzeitig an dessen Lösung arbeiten können. Dies könnten z.B. mehrere unabhängige Prozessoren sein, wie sie z.B. in Rechenzentren vorliegen, oder einzelne hochgradig parallele Hardware, beispielsweise Grafikprozessoren (GPUs). Die Veranstaltung gliedert sich in einen Vorlesungsteil zur Vermittlung der Grundlagen und ein anschließendes Blockpraktikum, in welchem sich die Studierenden mit einer Anwendung ihrer Wahl beschäftigen sollen. Im Rahmen des Vorlesungsteils werden zunächst grundlegende Problemstellungen der Veranstaltung Informatik A (Algorithmen & Datenstrukturen) wiederholt und verschiedene parallele Algorithmen zu deren Lösung vorgestellt. Diese werden untereinander und mit den bekannten seriellen Algorithmen hinsichtlich der Anzahl sequentieller Schritte, des Speicherverbrauchs, des Parallelitätsgrads und des Gesamtaufwands verglichen. Besondere Aufmerksamkeit wird dabei im Praxisteil auch der Implementation auf paralleler Hardware mit OpenCL und (optional) Cuda geschenkt. So können weiterhin die auf verschiedener Hardware messbaren Laufzeiten der Algorithmen verglichen und interpretiert werden. Zu den Grundlagen werden regelmäßig Übungsaufgaben gestellt, deren erfolgreiche Bearbeitung für die Teilnahme am anschließenden Anwendungsteil obligatorisch ist. Im Praktikumsteil werden in kleinen Gruppen Anwendungen bearbeitet, welche idealerweise einen Bezug zu den Fachrichtungen der einzelnen Studierenden der Gruppe aufweisen. Denkbare Themengebiete sind u.a.: - Scientific Simulation (Moleküle, …) - Numerik, Lineare Algebra, … - Signal Processing - Fluid Dynamik - Rendering (Interaktives Ray Tracing, vollständig programmierbare Rastergrafikpipeline, …) - Remote Rendering - Partikelsysteme, Animationstechniken - Scientific Visualization (Medical Imaging, …) - Computer Vision, Video/Image Processing - Interaktive Physiksimulation für Spiele - Gerne nehmen wir weitere Vorschläge der Studierenden entgegen! |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Evaluation | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Ablauf |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Literatur |
|