Institute of Computer Languages
Compilers and Languages Group
über
Datum: | Dienstag, 4. August 2009 |
---|---|
Zeit: | 11:00 s.t. |
Ort: | TU Wien, Bibliothek E185.1, Argentinierstraße 8, 4. Stock (Mitte) |
Wir beschreiben einen Ansatz zur optimierenden Komposition paralleler Programme aus Komponenten. Die optimierende Komposition sequentieller Programme ergibt sich als ein Spezialfall.
Unsere Komponenten enthalten sequentiellen oder explizit-parallelen Code; über die übliche funktionale Schnittstelle hinaus liefert der Komponentenhersteller auch Metadaten und -code zur Vorhersage nicht-funktionaler Eigenschaften, z.B. des erwarteten Laufzeitbedarfs, und kennzeichnet explizit die Kompositions- und Variationspunkte im Code. Mithilfe der Metadaten können Laufzeiten beispielsweise durch ein Modell geschätzt oder zur Deployment-Zeit durch Profiling auf der Zielplattform ermittelt werden.
Aus den Metadaten berechnet ein Kompositionswerkzeug zur Deployment-Zeit (off-line) Lookup- und Scheduling-Tabellen und generiert Code, der tabellengesteuert zur Laufzeit den Programmablauf optimiert, indem etwa bei jedem Aufruf einer Komponentenfunktion in Abhängigkeit der aktuellen Problemgrößen und verfügbaren Ressourcen die erwartet schnellste Variante unter mehreren äquivalenten Komponenten angesprungen wird, das erwartet schnellste Schedule bei unabhängigen Subtasks gewählt wird, und Operanden automatisch in die erwartet geeignetste Reprsentation konvertiert werden.
Unser Ansatz stellt eine Generalisierung der zur Zeit sehr populären Autotuning-Verfahren für spezielle Bibliotheksfunktionen im Hochleistungsrechnen dar. Wir demonstrieren anhand von Fallstudien mit sequentiellen und parallelen Berechnungen das Optimierungspotential unserer Methode.
Christoph W. Kessler (german spelling: Keßler) received a PhD degree in
Computer Science in 1994 from the University of Saarbrücken, Germany,
and a Habilitation degree in 2001 from the University of Trier, Germany,
where he had worked for 6 years as assistant professor in computer science.
In 2001 he joined Linköping university, Sweden, as associate professor at the
programming environments lab (PELAB) of the computer science department (IDA).
In 2007 he was appointed full professor at Linköping university.
His research interests include parallel programming, compiler technology,
code generation, optimization algorithms, and software composition.
He has published two books and more than 50 scientific papers in international
journals and conferences. His contributions include e.g. the OPTIMIST
retargetable optimizing integrated code generator for VLIW and DSP processors,
and the parallel programming languages Fork and NestStep.
(http://www.ida.liu.se/~chrke/)
Sie möchten auf diesen Vortrag durch Aushang hinweisen? Eine druckfertige Einladung im pdf-Format dafür finden Sie hier.