|
Einrichtungen >> Technische Fakultät (TF) >> Department Informatik (INF) >> Professur für Höchstleistungsrechnen >>
|
Entwurf und Implementierung eines „Open-Source Architecture Code Analyzer“ (OS-ACA)
- Art der Arbeit:
- Master Thesis
- Betreuer:
- Wellein, Gerhard
Professur für Höchstleistungsrechnen Telefon 09131 85 28136, Fax 09131 302941, E-Mail: gerhard.wellein@fau.de
Hager, Georg Abteilung Zentrale Systeme (RRZE) Telefon 09131 85-28973, Fax 09131 302941, E-Mail: georg.hager@fau.de
Hammer, Julian
- Beschreibung der Arbeit:
- Ziel ist es, basierend auf automatisierten Mikrobenchmarks Vorhersagen für die Ausführungszeit von unbekannten Instruktionsfolgen zu treffen. Ganz allgemein ist dies ein sehr schwieriges Problem, wir interessieren uns jedoch für die Instruktionsfolgen der innersten Schleife von numerischen Anwendungen/Simulationen. Daraus ergeben sich viele Vereinfachungen: keine Verzweigungen, wenige unterschiedliche Instruktionen, meist durchsatzgebunden usw., die das Problem handhabbar machen.
Aufgabe wird es sein ein Tool(kit) zu erstellen, das folgende automatische Funktionen bietet:
• Extrahieren eines reduzierten Instruktionssatzes aus gegebenem Assemblercode
für unterschiedliche Mikroarchitekturen
• Ausmessen von Latenz und Durchsatz der gefundenen Instruktionen
• Ausmessen und korrelieren von Latenz- und Durchsatzänderungen bei Instruktionspaarung
Wenn ich MUL und ADD ausführe, dauert das solange wie wenn ich nur MUL mache, oder länger?
• Übertragen der gemessenen Daten auf ein generisches Maschinenmodell
• Anwendung des gewonnen Maschinenmodells auf neue Instruktionsfolgen und Vorhersage des maximal zu erwartenden Durchsatzes und der maximalen Latenz (d.h. Best/Worst Case) Danach sollen die Vorhersagen mit anderen Tools (soweit vorhanden) verglichen und durch Messungen validiert werden.
Es gibt über unserer Gruppe hinaus sehr großes Interesse an solch einem Werkzeug in der HPC-Community, weshalb uns die Nachhaltigkeit der Software sehr wichtig ist. Es sollte über einen Proof-of-Concept hinausgehen und die Basis für weitere Entwicklungen auf diesem Gebiet stellen. Die Ergebnisse aus dieser Arbeit sollten sich auf den einschlägigen Konferenzen Publizieren lassen und werden in bestehende Projekte integriert ( https://github.com/RRZE-HPC/kerncraft ).
- Vorausgesetzte Vorlesungen bzw. Kenntnisse:
- • Sehr gute Kenntnisse in Python (oder in anderen Hochsprachen und die Bereitschaft sich in Python einzuarbeiten)
• Belegbare Erfahrung in der Entwicklung von Open-Source-Software und Bibliotheken mit Fokus auf Software Engineering und Nachhaltigkeit
• Wie sehen deine Projekte auf GitHub aus? Erfahrung mit continuous integration?
• Spaß am High Level Programmieren in Python
• Interesse an (very) low level Programmieren in Assembler und Rechnerarchitektur
- Bearbeitungszustand:
Die Arbeit ist noch offen. |
|
 |
 |
|
UnivIS ist ein Produkt der Config eG, Buckenhof |
|
|