Advanced Topics in Parallel Computing

  • Typ: Seminar (S)
  • Semester: SS 2019
  • Zeit: 29.04.2019
    15:45 - 17:15 wöchentlich
    Gebäude 20.21, Raum 314



    06.05.2019
    15:45 - 17:15 wöchentlich
    Gebäude 20.21, Raum 314


    13.05.2019
    15:45 - 17:15 wöchentlich
    Gebäude 20.21, Raum 314


    20.05.2019
    15:45 - 17:15 wöchentlich
    Gebäude 20.21, Raum 314


    27.05.2019
    15:45 - 17:15 wöchentlich
    Gebäude 20.21, Raum 314


    03.06.2019
    15:45 - 17:15 wöchentlich
    Gebäude 20.21, Raum 314


    17.06.2019
    15:45 - 17:15 wöchentlich
    Gebäude 20.21, Raum 314


    24.06.2019
    15:45 - 17:15 wöchentlich
    Gebäude 20.21, Raum 314


    01.07.2019
    15:45 - 17:15 wöchentlich
    Gebäude 20.21, Raum 314


    08.07.2019
    15:45 - 17:15 wöchentlich
    Gebäude 20.21, Raum 314


    15.07.2019
    15:45 - 17:15 wöchentlich
    Gebäude 20.21, Raum 314


    22.07.2019
    15:45 - 17:15 wöchentlich
    Gebäude 20.21, Raum 314



  • Dozent: Prof. Dr. Martin Frank
    Mehmet Soysal
    Prof. Dr. Achim Streit
  • LVNr.: 2400023
Bemerkungen

Unter Informatik Seminar 1, 2 oder 3 verbuchen.

Die Vorabregistrierung im ILIAS ist unverbindlich und nicht verpflichtend, aber wünschenswert, damit wir versuchen können, vorzeitig ausreichend Themen und Themenbetreuer zu organisieren.

Anmeldung zum Seminar und Themenverteilung wird während ersten Termin am 29.04.2019, Mo, 15:45 - 17:15, Gebäude 20.21, Raum 314 stattfinden.
Falls mehrere Studenten sich für das gleiche Thema interessieren, entscheidet die Reihenfolge der ILIAS Anmeldung.

Beschreibung

Eine effiziente Nutzung hochwertiger Supercomputing-Ressourcen (auch Hochleistungsrechner bzw. HPC genannt) für Simulationen von Phänomenen aus der Physik, Chemie, Biologie, mathematischen oder technischen Modellierung, von neuronalen Netzen, Signalverarbeitung, usw. ist nur möglich, wenn die entsprechenden Anwendungen mit modernen und fortschrittlichen Methoden der parallelen Programmierung implementiert werden. Oftmals ist sogar die Fähigkeit der Anwendung zur guten Skalierung (d.h. zur effizienten Nutzung einer großen Menge von CPU-Kernen) oder zur Nutzung von Beschleunigerhardware wie z.B. Grafikkarten/GPUs eine Voraussetzung, um einen Zugang zu und entsprechende Rechenzeit auf großen HPC-Systemen genehmigt zu bekommen.

Die Verbesserung bestehender Algorithmen in den Simulationscodes durch fortschrittliche Parallelisierungstechniken kann zu erheblichen Leistungsverbesserungen führen; Ergebnisse können so schneller generiert werden. Oder es besteht auch die Möglichkeit zur Energieeinsparung, in dem geeignete zeitintensive Rechenroutinen des Simulationsprogramms von CPUs mit einem relativ hohen Energiebedarf auf GPUs mit einem niedrigeren Energiebedarf (pro Rechenoperation) verlagert werden.

Im Seminar werden ausgewählte Themen zu moderne Techniken der parallelen Programmierung vorgestellt und diskutiert. Stichworte sind MPI, OpenMP, CUDA, OpenCL und OpenACC. Es werden auch Werkzeuge zur Analyse der Effizienz, Skalierbarkeit und des Zeitverbrauchs von parallelen Anwendungen adressiert. Themen aus dem Bereich der parallelen Dateisysteme und der Hochgeschwindigkeits-Übertragungstechnologien runden das Themenspektrum ab.

Folgende Themen können ausgewählt werden:

  • MapReduce on HPC clusters - Apache Spark
  • Fabric Technologien
  • Parallel I/O via HDF5
  • SIMD Programmierung
  • Netzwerk Topologien
  • Scheduling algorithm
  • OpenACC - der Programmierstandard für heterogene CPU/GPU Parallelprogrammierung
  • OpenMP 4.0 neuer Standard zur mehrfädigen Programmierung von CPUs & GPUs
  • Parallelisierung rekursiver Programme mit Hilfe des OpenMP Task-Konzept
  • Solving Sodoku with OpenMP Tasks
  • Symmetric Reverse Cuthill-McKee on Multicore or GPUs
  • Monte Carlo Method on GPUs
  • Realize the PageRank Algorithm in OpenMP
  • Parallel Computing with MATLAB
Ziel

Studierende erarbeiten, verstehen und analysieren ausgewählte, aktuelle Methoden und Technologien im Themenbereich des Parallelen Rechnen. Studierende lernen ihre Arbeiten gegenüber anderen Studierenden vorzutragen und sich in einer anschließenden Diskussionsrunde mit Fragen zu ihrem Thema auseinander zu setzen.