Institutsseminar/2018-10-05
Datum | Freitag, 5. Oktober 2018 | |
---|---|---|
Uhrzeit | 11:30 – 12:15 Uhr (Dauer: 45 min) | |
Ort | Raum 348 (Gebäude 50.34) | |
Webkonferenz | ||
Vorheriger Termin | Fr 21. September 2018 | |
Nächster Termin | Fr 5. Oktober 2018 |
Termin in Kalender importieren: iCal (Download)
Vorträge
Vortragende(r) | Timo Kegelmann |
---|---|
Titel | A Parallelizing Compiler for Adaptive Auto-Tuning |
Vortragstyp | Masterarbeit |
Betreuer(in) | Philip Pfaffe |
Vortragssprache | |
Vortragsmodus | |
Kurzfassung | Parallelisierende Compiler und Auto-Tuner sind zwei der vielen Technologien, die Entwick-
lern das Schreiben von leistungsfähigen Anwendungen für moderne heterogene Systeme erleichtern können. In dieser Arbeit stellen wir einen parallelisierenden Compiler vor, der Parallelität in Programmen erkennen und parallelen Code für heterogene Systeme erzeu- gen kann. Außerdem verwendet der vorgestellte Compiler Auto-Tuning, um eine optimale Partitionierung der parallelisierten Codeabschnitte auf mehrere Plattformen zur Laufzeit zu finden, welche die Ausführungszeit minimiert. Anstatt jedoch die Parallelisierung ein- mal für jeden parallelen Abschnitt zu optimieren und die gefundenen Konfigurationen so lange zu behalten wie das Programm ausgeführt wird, sind Programme, die von unserem Compiler generiert wurden, in der Lage zwischen verschiedenen Anwendungskontexten zu unterscheiden, sodass Kontextänderungen erkannt und die aktuelle Konfiguration für je- den vorkommenden Kontext individuell angepasst werden kann. Zur Beschreibung von Kontexten verwenden wir sogenannte Indikatoren, die bestimmte Laufzeiteigenschaften des Codes ausdrücken und in den Programmcode eingefügt werden, damit sie bei der Aus- führung ausgewertet und vom Auto-Tuner verwendet werden können. Darüber hinaus speichern wir gefundene Konfigurationen und die zugehörigen Kontexte in einer Daten- bank, sodass wir Konfigurationen aus früheren Läufen wiederverwenden können, wenn die Anwendung erneut ausgeführt wird. Wir evaluieren unseren Ansatz mit der Polybench Benchmark-Sammlung. Die Ergeb- nisse zeigen, dass wir in der Lage sind, Kontextänderungen zur Laufzeit zu erkennen und die Konfiguration dem neuen Kontext entsprechend anzupassen, was im Allgemeinen zu niedrigeren Ausführungszeiten führt. |
- Neuen Vortrag erstellen