Institut für Mikroelektronische Systeme Studium Studien- & Abschlussarbeiten Abgeschlossene Arbeiten
Konzeptionierung und Implementierung von Mikrobenchmarks zur Analyse laufzeitentscheidender Charakteristika von Mehrkernprozessoren

Konzeptionierung und Implementierung von Mikrobenchmarks zur Analyse laufzeitentscheidender Charakteristika von Mehrkernprozessoren

Betreuung:  Arndt, Jakob
Student/in:  Jan Tumbrägel
Jahr:  2015
Datum:  09-01-15
Laufzeit:  09.07.2014-09.01.2015
Ist abgeschlossen:  ja

Am Institut für Mikroelektronische Systeme werden im Rahmen eines Forschungsvorhabens im Bereich kamerabasierte Fahrassistenz unterschiedliche Hardwareplattformen auf ihre Eignung zur algorithmischen Umsetzung untersucht. Dabei werden unterschiedliche Multicore-Systeme als potentielle Plattform in Betracht gezogen. Es werden Laufzeiteigenschaften und Plattformparameter von stromsparenden eingebetteten Systemen bis hin zu leistungsstarken High-End Prozessoren analysiert, um Gesetzmäßigkeiten herauszustellen. Im Vordergrund steht hierbei eine theoretische Modellierung des Laufzeitverhaltens von paralleler Software auf gegebenen Architekturen.

Ziel bei der Entwicklung von paralleler Software für Multicore-Prozessoren ist es, eine portable Lösung zu implementieren, die dennoch die vorhandenen Hardware-Ressourcen der jeweiligen Zielplattform möglichst gut ausnutzt. Dazu ist eine Parallelisierung auf unterschiedlichen Ebenen (Task- und Datenparallelität) notwendig. Da sich architekturspezifische Parameter jedoch unterschiedlich auf das Laufzeitverhalten eines Algorithmus auswirken, müssen diese bei der Auswahl einer geeigneten Parallelisierungsstrategie berücksichtigt werden. Um bereits frühzeitig eine objektive Einschätzung der Skalierungseigenschaften eines Algorithmus zu ermöglichen, sollen relevante Parameter aus Hardware und Software in einer Modellierung kombiniert werden. Für die Softwareanalyse stehen am Institut geeignete Werkzeuge, sowie Referenzalgorithmen mit unterschiedlichen Parallelisierungsstrategien und Skalierungseigenschaften zur Verfügung.

Herr Tumbrägel erhält die Aufgabe, an mindestens zwei am Institut vorhandenen Multicore-Plattformen charakteristische und laufzeitentscheidende Eigenschaften anhand von Mikrobenchmarks zu extrahieren. Dabei sollen zunächst nach einer Einarbeitungsphase in Prozessorarchitekturen und parallele Programmierung, Mikrobenchmarks aus vorhandenen Arbeiten  getestet werden. Hierbei soll speziell die Aussagekraft und Eignung für verschiedene Architekturklassen untersucht werden. Anschließend soll nach einer Zusammenstellung der relevantesten Hardwareparameter, ein Set an Mikrobenchmarks implementiert werden, das ggf. manuell um weitere Systeminformationen (z.B. Speicher-, Kommunikationstopologie oder Instruktionssatzinformationen) erweitert werden kann. Als Abschluss der Arbeit soll anhand einer exemplarischen Modellierung eines parallelen Programms gezeigt werden, wie sich verschiedene Hardwareeigenschaften auf das plattformabhängige, nicht-deterministische Laufzeitverhalten auswirken. Auf eine gute Dokumentation des C++ Codes ist zu achten. Die eingereichten Exemplare, sowie die Ergebnisse der Arbeit bleiben Eigentum des Instituts.