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 Laptop- und Desktop-Rechner sind bereits kleine Parallelrechner, da mehrere Kerne eine echt parallele Abarbeitung von Anwendungen erlauben. Daher gewinnt die Programmierung von parallelen Programmen und Algorithmen immer mehr an Bedeutung und Wichtigkeit. Durch die steigenden Berechnungskapazitäten werden außerdem immer größere Datenmengen produziert.
Im Rahmen des Projekts werden daher verschiedene Aspekte von Parallelrechnern mithilfe moderner Methoden genauer analysiert und evaluiert. Big-Data-Ansätze erlauben die Analyse der immer weiter wachsenden Datenflut, während Machine-Learning-Methoden zunehmend klassische Problemlösungsansätze ersetzen. Leistungskritische Komponenten werden dabei häufig in hardwarenahen Sprachen wie C oder C++ entwickelt, während einfacher zu erlernende Sprachen wie Python eine komfortable Nutzung durch Anwender erlauben.
Konkrete Themen orientieren sich stark an aktuellen Forschungsfragen und werden daher erst am Einführungstermin vorgestellt. Beispiele können Sie in der Liste der letzten Jahre finden. Wir stehen außerdem interessanten Themenvorschlägen offen gegenüber.
Beachten Sie auch unsere allgemeinen organisatorischen Hinweise zu Projekten.
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
Zeit | Donnerstag, 14–16 Uhr | ||
Ort | DKRZ Raum 034 | ||
Mailingliste | PS-2223 |
Dozenten
Themenliste
-
- Recherchieren, ausprobieren, Ergebnisse sammeln
- Automatische Mustererkennung/Klassifizierung
- Potential für einen wissenschaftlichen Artikel
- + Load-Balancing mit Fokus auf I/O
- Recherche bzgl. realisitscher Workloads auf HPC-Systemen
- Wie simuliert man Workloads?
- Wie kann 'perfektes Weltwissen' genutzt werden?
- Wie kommt man an das 'perfeke Weltwissen'
- Szenarien definieren und praktisch ausprobieren
-
- Aktives Abgreifen der Flags, wann der Buffer freigebenen ist
- ZFS: User-Hints an der Lustre-Schnittstelle einbauen 5) – Jonas Peeters
- Prüfen, was es schon gibt
- fadvise, ladvise
- Um Kompression erweitern
- C, Kernel
- Nachvollziehbare IR-Transformation mit LLVM 6) – Liviana Franke,
Ludwig Muß- Ausgabe modifizierten High-Level-Codes
-
- Lustre Progressive File Layout (PFL) und studieren (ggf. auch Self-Extending Layout)
- Recherche (Funktionalität, Studien, Limits)
- Verschiedene Szenarien definieren und testen
- Strategien und Schemata für eine universelle Lösung entwickeln
- Kompressionsbenchmark 8) – Carsten Beneke
- Parallelisierung unter Berücksichtigung von CPU-Bidnings
- Algorithmen erweitern
- Auswerten pro Block, visualisieren
- Potential für einen wissenschaftlichen Artikel
-
- JULEA auf Pis zum Laufen bringen und benchmarken
- PXE Boot
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.
- 20.10.22 Einführung und Themenvergabe
- 17.11.22 Kurzpräsentationen
- 22.12.22 Kurzpräsentationen
- 26.01.23 Vorläufiger Termin: Kurzpräsentationen
- 28.03 Finale Präsentation:
- Hinweis: Abweichender Termin auf einem Dienstag!
- Online (Zugangsdaten per Mail versendet)