====== Projekt „Paralleles Rechnen“ ====== ===== 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 [[:teaching:organisatorische_hinweise:projekte|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 ===== //Die Veranstaltung findet online statt. Das Zoom-Passwort wird am 2.11. über die Mailingliste versendet.// || Zeit || Donnerstag, 14--16 Uhr || || Ort || Online Zoom 96326797531 || || Mailingliste || [[https://wr.informatik.uni-hamburg.de/listinfo/pre-2021|PRE-2021]] || ===== Dozenten ===== * [[People:Anna Fuchs]] (Ansprechpartner) * [[People:Jannek Squar]] * [[People:Georgiana Mania]] * [[alexandru.gherega@desy.de|Dr. Alexandru Gherega (DESY)]] * [[https://www.parcio.ovgu.de/People/Michael+Kuhn.html|Jun.-Prof. Dr. Michael Kuhn (OVGU)]] * [[https://www.dkrz.de/about/mitarbeiter/HannesThiemann|Hannes Thiemann (DKRZ)]], [[https://www.dkrz.de/about/mitarbeiter/StephanKindermann |Stephan Kindermann]] * [[https://www.hsu-hh.de/hpc/philipp-neumann/|Univ.-Prof. Dr. habil. Philipp Neumann (HSU)]] ===== Themenliste ===== - Parallel partdiff ((Anna Fuchs)) ((Michael Kuhn)) -- Alexander Günther * MPI-IO, verschiedene Zugriffsmuster, sync/async I/O, JULEA-interface - Compression in Lustre ((Anna Fuchs)) -- Pablo Correa Gómez * Client/server communication - Wahl-Optimierung mittels ungarischer Methode ((Anna Fuchs)) ((Jannek Squar)) -- Felix Wolf {{ :teaching:wintersemester_2020_2021:pre-2021_wolf_matchfinder_slides.pdf |Folien}} {{ :teaching:wintersemester_2020_2021:pre-2020_wolf_matchfinder_report.pdf |Bericht}} * Framework mit Frontend zum einfachen und fairen Wählen von mehreren Optionen, priorisiert, mit Veto - Performance-Optimierung und Tests für SAGA-GIS ((Jannek Squar)) -- Rasmus Pranke {{ :teaching:wintersemester_2020_2021:pre-2021_pranke_saga_slides.pdf |Folien}} {{ :teaching:wintersemester_2020_2021:pre-2021_pranke_saga_report.pdf |Bericht}} - Design, implementation and operation of a workflow for automated conversion of climate data in the PByte range into the cloud-ready data format zarr. ((Hannes Thiemann)) ((Jannek Squar)) ((Anna Fuchs)) -- Georg Siemund - Entwicklung einer automatisierten und parallelen Test-Suite für MaMiCo ((Philipp Neumann)) -- Leonard Hannen, Felix Maurer {{ :teaching:wintersemester_2020_2021:pre-2021_maurer-hannen_slides.pdf |Folien}} - Automatisiertes Spack Testing auf Cluster-Architektur ((Jannek Squar)) -- Elden Sokoli - Automatisiertes Testen und Auswerten von parallelen Programmen -- Aydin Abdurrahman, Popal Massi, Markaj Dritan ((Anna Fuchs)) ((Jannek Squar)) Open topics - Runge-Kutta-Nystrom integrator (//English//) ((Georgiana Mania)) * Implement and evaluate the performance of C++ vs ALPAKA/libcudacpp RKN2 and RKN4, applied on the equation of motion - Parallel Ant Colony Optimisation (Clojure) (//English//) ((Alexandru Gherega)) * Learning Clojure to some extent * Learning about the ACO paradigm * Translating it in the functional approach (ants will be functions, the exploration space a heavy dictionary datastructure) * The parallel approach: split the set of ants into subparts and allow them to explore the same datastructure * Evaluation: some basic graph path search initially (look for speedup) ===== 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. * 05.11. Einführung und Themenvergabe * 10.12. Meeting (Besprechung mit allen) * 07.01. Meeting (Kurzpräsentationen) * 11.02. Meeting (Besprechung mit allen) * 04.03. Meeting (Finale Präsentation)