Table of Contents
Projekt „Parallele Systeme“
Beschreibung
Unter einem Parallelrechner versteht man einen Rechner, auf dem Anwendungen echt parallel ausgeführt werden können. Die heutzutage üblichen Desktop-PCs sind bereits kleine Parallelrechner, da mehrere Kerne eine echt parallele Abarbeitung von Anwendungen erlauben. Vor allem aufgrund der Verbreitung von letzteren wird in Zukunft die Programmierung von parallelen Programmen und Algorithmen an Bedeutung gewinnen. Cluster kombinieren mehrere Rechner über eine schnelle Vernetzung um auch größere Probleme schnell lösen zu können. Die größten existierenden Supercomputer kommen auf über 10 Millionen Kerne. Ein weiterer wichtiger Aspekt im Bereich der Supercomputer ist auch die effiziente Speicherung von großen Datenmengen.
Im Rahmen des Projekts können verschiedene Aspekte von Parallelrechnern genauer analysiert und evaluiert werden. Hierzu steht ein kleinerer Entwicklungscluster des Arbeitsbereichs zur Verfügung.
Die Themen gliedern sich in die Entwicklung von parallelen Anwendungsprototypen (beispielsweise für wissenschaftliche Probleme) und Dateisystemen, und die Evaluation von Hard- und Software (inklusive alternativer Programmiersprachen). Theoretische Betrachtungen und Evaluation der Thesen mittels Prototypen sind ebenfalls möglich. Wir stehen außerdem interessanten Themenvorschlägen offen gegenüber.
Beachten Sie auch unsere allgemeinen organisatorischen Hinweise zu Projekten.
Wichtiger Hinweis: Aktuell läuft die Abstimmung für die Projektthemen. Der Link zur Abstimmung wurde über die Mailingliste versendet und kann auch im Mail-Archiv eingesehen werden (Stand: 2023-04-07)
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.
Daten der Veranstaltung
Dozenten
- Anna Fuchs (Ansprechpartner)
Themenliste
-
- Coding tasks in Fortran/OpenACC
- Refactor existing routines in the ocean model
- Parallelize key points of the code using OpenACC directives
- Profiling and performance evaluation of the outcome
- 1 Person
- HDF5/NetCDF/xarray Visualisierer 4) – Bent Heide
- Interne Struktur in x-D visualisieren
- Inkl unendlicher Dimension(en)
- Speicherabbild auf Platte
- Python
- 1 Person
- Test-Suite in numio 5) – Linus Pogoda
- Korrektheit
- Leistung
- Unterschiede zu IOR
- Dokumentation, CI
- 1 Person
-
- Automatisierte Skripte für die Ausführung mehrere Anwendungen mit vorgefertigen Modi
- Anpassung an die Infrastruktur
- Generierung von Loads (empty, peak, medium, I/O peak, etc.)
- Anbindung an andere Benchmarks (um mit anderen im Ensemble zu laufen)
- 1 Person
-
- 2 Repos zusammenführen
- GUI erweitern
- Benchmarks hinzufügen
- Automatisierte Auswertung
- Python
- 1-2 Personen
- Performance-Vergleich C gegen Python 10) – Medis Shehi
- Vergleich von Parallelisierungsmöglichkeiten
- Python Interpreter, multiprocessing, threads, async, dask, usw.
- posix threads, openmp, MPI, C threads, usw.
- Abschlussarbeit: Vergleichskatalog Performance und Usability
- 1-2 Personen
- Kosten und Leistung im HPC 11) – Melissa Dincer
- Sehr viel Recherche
- Benchmarks ausführen
- Kostenmodelle erstellen und evaluieren
- Vorhandene Daten auswerten und visualisieren
- Stromverbrauch, Fixkosten, Personalkosten
- Compression, Job-offloading
- 1 Person
-
- How much do means / … (esp. in the ocean with coastlines and terrain) suffer, if we work with reduced resolution data
- Comparing nearest-neighbor and conservative remaps
- Comparison with drastic compression approaches
- Low spatial resolution and high temporal vs. other way around
- define a set of analyses that should work (basically by asking around at MPI-M)
- take high-res data, mangle it in different ways, apply the analyses.
- Requirements:
- Strong physical unterstanding
- Python, shell scripting
- 1 Person
Zeitplan und Materialien
Bei einem allgemeinen Einführungstermin werden Grundlagen vermittelt. Außerdem werden die Teilnehmer in Gruppen eingeteilt und bekommen Themen zugewiesen.
Nach der Festlegung der Themen soll ein Projektplan erstellt und mit dem jeweiligen Betreuer diskutiert werden. Regelmäßige Zwischenbesprechungen und -präsentationen sowie eine Abschlusspräsentation dienen dazu die Ergebnisse den anderen Projektteilnehmern vorzustellen.
- 06.04.2023 Einführung und Themenvorstellung
- 13.04.2023 Ablauf der Frist für Themenauswahl (14:00 Uhr) → kein Treffen
- 11.05.2023 Treffen
- 15.06.2023 Treffen (Kurzpräsentation mit Folien)
- 13.07.2023 Treffen (online)