Table of Contents

Praktikum „Parallele Programmierung“

Beschreibung

Um Mehrkernprozessoren und Multiprozessoren effizient zu nutzen, genügt es nicht, ein serielles Programm zu schreiben. Vierkernsysteme sind auch schon bei Arbeitsplatzrechnern weit verbreitet. Standards wie MPI und OpenMP, erlauben es, in den Programmiersprachen C(++) und Fortran Code zu schreiben, welcher auch auf Hochleistungsrechnern lauffähig ist.

Im Praktikum werden wir das parallele Programmieren mit MPI und OpenMP erlernen und auch eigenständige Anwendungen (z.B. Spielelöser) in Gruppen entwickeln. Im Vergleich zu der Vorlesung Hochleistungsrechnen wird der Fokus auf der Praxis liegen.

Die Veranstaltung wird zum Teil auf Englisch gehalten.

Beachten Sie auch unsere allgemeinen organisatorischen Hinweise zu Praktika.

Lernziel

Ziel des Praktikums ist es, die wichtigsten Parallelisierungskonzepte kennen zu lernen und Problemstellungen selbstständig im Team zu bearbeiten. Die Studierenden gewinnen eine Übersicht über hilfreiche Werkzeuge zur Entwicklung und Bewertung von Anwendungen.

Zielgruppe

Das Projekt eignet sich für Studierende der Informatik in den Diplom- und Bachelorstudiengängen. Studierende anderer Studiengänge müssen die Anrechnung mit dem jeweiligen Prüfungsausschuss klären.

Interessierte Zuhörer sind auch herzlich willkommen.

Die Veranstaltung wird auf Englisch stattfinden.

Daten der Veranstaltung

Zeit Mittwoch, 16–18 Uhr
Ort DKRZ, Raum 034
Beginn Mi, 6. Apr. 2016, 16:15 Uhr
Vorbesprechung Mi, 6. Apr. 2016, 16:15 Uhr
Mailingliste PAPO-16

Dozenten

Vorgehen

Zunächst werden die Grundlagen theoretisch vermittelt und mit kleinen Beispielen geübt. Im zweiten Teil werden in kleinen Gruppen jeweils unterschiedliche Problemstellungen bearbeitet. Hierbei wird ein (kleiner) Projektplan erstellt und im Team eine Anwendung zur Problemlösung implementiert. Status und aufgetretene Probleme werden regelmäßig gemeinsam besprochen.

Beispiel Problemstellungen

Für weitere Vorschläge sind wir offen. Wichtig ist vor allem die korrekte Parallelisierung (evtl. mit Alternativen) und Auswertung. Detaillierte Kenntnisse der Numerik sind nicht erforderlich.

Vorgeschlagene Themen:

Bearbeitung des Projektes

Bei der Durchführung der Projektes sollten einige Inhalte bearbeitet werden und entsprechend in Präsentation und Ausarbeitung einfließen.

Zeitplan und Materialien

  1. Vorbesprechung (06.04.2016), Beschreibung des Praktikums, Architekturen, Programmierkonzepte von OpenMP und MPI, Gebietszerlegung und Aufgabenteilung.
  2. Theoretische Grundlagen (in der Vorlesungszeit)
  3. Projektbearbeitung (je nach Absprache auch in der vorlesungsfreien Zeit)
    • Hinweise zur Projektbearbeitung Hinweise zur Projektarbeit
    • 08.06.2016 – Projektvorstellung und Präsentation der algorithmischen Lösung und Projektplan
    • 13.07.2016 Statustreffen – Vorstellung der bisherigen Arbeiten und aufgetretene Probleme
    • 17.08.2016 Statustreffen – Vorstellung der bisherigen Arbeiten und aufgetretene Probleme, erste Leistungsergebnisse
    • 21.09.2016 Abschlusstreffen – Präsentation der Ergebnisse

Ergebnisse

Emissions-Simulation

Autor: Jonas Tietz

In diesen Projekt habe ich versucht Emissionen im zweidimenstionalen Raum zu simulieren. Dafür habe ich statt einzelne Partikel zu simulieren alles in Zellen unterteilt.

PräsentationBerichtCode

Literaturhinweise

Bücher