Thesis Topics
Table of contents
Bachelor, Master And Diploma Thesis
The topic selection is made together with the student. Possible topics for a thesis might include:
- Measuring and evaluating the energy consumption of applications
- Developing standardised energy efficiency benchmarks
- Developing and evaluating energy efficiency metrics
- Developing strategies for energy savings
Contact: Daniel Hackenberg
Schwerpunkte:
- Literatursuche zu Hyperparameter-Optimierungsmethoden
- Auswahl einiger geeigneter Methoden und Implementierung für das HPC-System Taurus
- Vergleich der gefundenen Methoden mit OmniOpt hinsichtlich Parallelisierung, Performance und Flexibilität für die Nutzenden
Kontakt: Peter Winkler
(online seit 15.03.2022)
Anwendungsoptimierung für eine bestimmte Mikroarchitektur ist mit der steigenden Komplexität von Prozessoren schwieriger geworden. Auch die steigende Menge und Komplexität von Performanceanalysedaten durch neue Werkzeuge und zusätzliche Hardwareeinheiten sorgt dafür, dass Einsteiger von einer Optimierung abgehalten werden können. Die Top-Down Analysemethode zielt darauf ab, Performanceengpässe korrekt und schnell bestimmbar zu machen. Durch eine konkrete Vorgabe der kritischen Performance Events hilft es Nutzern, sich auf die Code-Optimierung zu konzentrieren. Dabei definiert sie kritische Stellen in der Mikroarchitektur und dazugehörige Performance Monitoring Events, um zu zeigen, ob die Stellen betroffen sind. Aktuellen Intel Mikroarchitekturen unterstützen spezielle Schnittstellen, um diese Daten einfach zu erfassen.
In dieser Arbeit soll die Top-Down Analysemethode herausgearbeitet werden. Weiterhin sollen Möglichkeiten beschrieben werden, diese unter Linux aus dem Userspace lesbar zu machen. Abschließend soll ein Score-P Plugin entwickelt und damit eine Beispielanwendung untersucht werden.
Schwerpunkte
- Literraturrecherche
- Beispielhafte Beschreibung der Top-Down Analysemethode am Beispiel einer aktuellen Intel Mikroarchitektur
- Beschreibung der vorhandenen Schnittstellen unter Linux
- Entwicklung eines Score-P Plugins
- Performanceanalyse eines Anwendungsbeispiels
Kontakt: Dr. Robert Schöne
(online since 15.03.2022)
The new SPEChpc2021 benchmark allows current system architectures to be evaluated using various parallel programming paradigms (MPI, OpenMP, OpenACC, OpenMP target offloading). In principle, four different problem sizes can be selected (tiny, small, medium, large). The goal of this topic is to measure and analyze a given partition of the Taurus system at ZIH using parts of the MPI configuration of the benchmark.
Priorities:
- Working on high-performance computing infrastructure in Linux working environment
- Configuration and installation of the SPEChpc2021 benchmark
- Bash/C/C++/Fortran or GPU programming
- Use of the performance recording tools Score-P, lo2s and Vampir
- Analysis and interpretation of the obtained data with respect to performance characteristics like scalability, speedup, parallel efficiencies, performance boundness
Contact: Dr. Holger Brunst
(online since 15.03.2022)
The new SPEChpc2021 benchmark allows current system architectures to be measured using various parallel programming paradigms (MPI, OpenMP, OpenACC, OpenMP target offloading). In principle, four different problem sizes can be selected (tiny, small, medium, large).
The goal of this topic is to install the complete performance suite (i.e. all four paradigms), to instrument it with the runtime monitor Score-P and to analyze the collected trace data with the analysis tool Vampir.
The individual applications of the suite in their four versions are to be compared in detail and examined for expected performance bottlenecks.
Since the benchmark is still comparatively new, problems with portability and computing performance are to be expected, which in turn can be uncovered and documented with the aforementioned tools.
Priorities:
- Working on high-performance computing infrastructure in Linux working environment
- Configuration and installation of the SPEChpc2021 benchmark
- Bash/C/C++/Fortran or GPU programming
- Use of the performance recording tools Score-P, lo2s and Vampir
- Analysis and interpretation of the obtained data with respect to performance characteristics like scalability, speedup, parallel efficiencies, performance boundnes
Contact: Dr. Holger Brunst
(Online seit: 02.05.2022)
Apache Flink ist ein Framework, das es erlaubt, die Verarbeitung von Daten auf Knoten eines Rechenclusters zu verteilen. Verschiedene Möglichkeiten bei der Implementierung einer Anwendung und Konfiguration des Clusters können die Geschwindigkeit der Verarbeitung beeinflussen. Die Geschwindigkeit von Anwendungen muss daher konkret untersucht werden. Lo2s ermöglicht es, das Anwendungsverhalten aufzuzeichnen. Im Rahmen dieser Arbeit soll Lo2s auf Flink-Benchmarks angewendet und deren Verhalten untersucht werden.
Inhaltliche Schwerpunkte:
- Untersuchung der Integration von lo2s und Apache Flink
- Vergleich der Performance-Daten von lo2s mit dem Flink-internen Monitoring
- Unterschiede zur Aufzeichnung mit Score-P
- Messung des Overheads
Kontakt: Jan Frenzel
Beleg-Topics
(online seit: 19.04.2021, update 06.12.2021 )
R ist eine der führenden Lösungen für die statistische Datenanalyse und kann für Data Analytics und Visualisierung eingesetzt werden. In der Arbeit sollen die Möglichkeiten des parallelen Rechnens mit R untersucht und evaluiert werden. Im Anwendungsfall sollen Sensordaten aus einem HPC-System parallel ausgewertet werden. Zur Bearbeitung der Aufgabenstellung sind Vorkenntnisse der Programmiersprache R obligatorisch.
Schwerpunkte:
- Konzeptionelle Umsetzung verschiedener paralleler Programmierparadigmen in R.
- Möglichkeiten und Probleme bei der Code-Optimierung für R.
- Bezug zu aktuellen Architekturen.
Literatur:
- Terence Sloan et al. Mastering Parallel Programming with R. Packt Publishing, 2016.
- McCallum, Q. Ethan; Weston, Stephen. Parallel R. O'Reilly, 2012.
Kontakt: Dr. Taras Lazariv
(online seit: 06.12.2021)
Die Architektur eines neuronalen Netzes (beschrieben durch seine Hyperparemeter) bestimmt sowohl seine Genauigkeit als auch die Performance. Die noch in Entwicklung befindliche parallele Hyperparameter-Optimierungssoftware OmniOpt soll anhand eines geeigneten Anwendungsfalls mit Standardmethoden zur Hyperparameteroptimierung verglichen werden. Dabei sollen in erster Linie das Verhalten, die Performance und die Möglichkeiten zur Parallelisierung am HPC-Sytem Taurus untersucht werden.
Schwerpunkte:
- Literatursuche zu Hyperparameter-Optimierungsmethoden
- Auswahl einiger geeigneter Methoden und Implementierung für das HPC-System Taurus
- Vergleich der gefundenen Methoden mit OmniOpt hinsichtlich Parallelisierung, Performance und Flexibilität für die Nutzenden
Literatur: https://github.com/hyperopt/hyperopt
Kontakt: Dr. Peter Winkler
(Online seit: 02.05.2022)
Apache Flink ist ein Framework, das es erlaubt, die Verarbeitung von Daten auf Knoten eines Rechenclusters zu verteilen. Verschiedene Möglichkeiten bei der Implementierung einer Anwendung und Konfiguration des Clusters können die Geschwindigkeit der Verarbeitung beeinflussen. Die Geschwindigkeit von Anwendungen muss daher konkret untersucht werden. Lo2s ermöglicht es, das Anwendungsverhalten aufzuzeichnen. Im Rahmen dieser Arbeit soll Lo2s auf Flink-Benchmarks angewendet und deren Verhalten untersucht werden.
Inhaltliche Schwerpunkte:
- Untersuchung der Integration von lo2s und Apache Flink
- Vergleich der Performance-Daten von lo2s mit dem Flink-internen Monitoring
- Unterschiede zur Aufzeichnung mit Score-P
- Messung des Overheads
Kontakt: Jan Frenzel
(Online seit: 02.05.2022)
AMD bietet mit den "AMD Optimizing CPU Libraries" (AOCL) optimierte Bibliotheken an, die spezifisch für Prozessoren ab der AMD Zen Architektur gedacht sind. Ziel dieser Arbeit ist es, die Einsatztauglichkeit dieser Bibliotheken zu prüfen. Hierfür soll die Romeo-Partition des HPC-Systems des ZIH genutzt werden. Zu analysieren ist die Performance im Vergleich zu etablierten Standardbibliotheken, wobei neben Benchmarks auch wissenschaftliche Anwendungen herangezogen werden können.
Zudem soll der Aufwand, diese Bibliotheken anstatt etablierter Standardbibliotheken einzubinden, überprüft werden.
Inhaltliche Schwerpunkte:
- Anpassung von Benchmarks für die Nutzung von AOCL Bibliotheken
- Messung der Performance von Benchmarks und ggf. Anwendungen auf dem HPC-System des ZIH
- Auswertung der Messungen
- Vergleich der AOCL-Ergebnisse mit etablierten Bibliotheken
Kontakt: Markus Velten
(Online seit: 02.05.2022)
AMD bietet mit den "AMD Optimizing C/C++ and Fortran Compilers" (AOCC) angepasste Versionen der LLVM Compiler an. Diese Compiler sollen Optimierungen spezifisch für Prozessoren der AMD Ryzen, Threadripper und EPYC Familien bieten.
Ziel dieser Arbeit ist es, die Eignung dieser Compiler für HPC-Anwendungen zu untersuchen. Hierfür soll die Performance anhand geeigneter Benchmarks wie z.B. SPEChpc auf den Romeo-Knoten des HPC-Systems des ZIH untersucht werden.
Inhaltliche Schwerpunkte:
- Einarbeitung in die Nutzung der AOCC Compiler
- Durchführung & Analyse von Benchmark-Messungen
- Untersuchung verschiedener Compiler-Flags
- Vergleich der AOCC Ergebnisse mit den Ergebnissen anderer Compiler (eigene Messungen und/oder submittierte SPEChpc Ergebnisse)
- Erstellung von Empfehlungen für Nutzende: Eignung des Compilers, sinnvolle Flags
Kontakt: Markus Velten