Universität Karlsruhe
Graphersetzung fĂŒr Optimierungen in der Codeerzeugung

Diplomarbeit (abgeschlossen)

Automatische Erkennung und initiale Transformation von potentiell durch SIMD-Befehlen implementierbaren Codes

Im Rahmen des Projekts „Globale maschinenabhĂ€ngige Codeerzeugung fĂŒr nichttriviale BefehlssĂ€tze“ soll in dieser Diplomarbeit die musterbasierte Transformation von Firm-Graphen untersucht werden.
Firm ist eine moderne Zwischensprache die an unserem Institut entwickelt wurde. Firm implementiert statische Einmalzuweisung (SSA) und stellt ein Programm als eine Überlagerung seines Steuer- und Datenflussgraphen dar. Neuartige Darstellungen von AbhĂ€ngigkeiten ĂŒber Objekte im Speicher und vom Steuerfluss bei Ausnahmen machen Firm zu einer idealen Basis zur Erforschung von Optimierungen.
Aus Sprachen wie C oder Java sind moderne Komplexbefehle (z.B. MMX-Befehle) nicht unmittelbar zu erzeugen, da es fĂŒr sie keine Hochsprachenkonstrukte gibt und sie ausprogrammiert werden mĂŒssen. Da Firm essenzielle AbhĂ€ngigkeiten als Graph darstellt, ist in dieser Arbeit zu untersuchen inwieweit verschiedene Ausdrucksweisen in der Quellsprache in gleichen Graphen mĂŒnden. Hierzu sollen Muster in Firm-Graphen gefunden werden und darauf basierend der Graph transformiert werden. Die zu erwarteten Muster sind grĂ¶ĂŸer als die mit herkömmlichen Backends behandelbaren, d.h. umfassen bis zu 40 Knoten und ebenso viele Kanten und sind insbesondere steuerflussĂŒbergreifend.
Die Arbeit gliedert sich dabei in einen theoretischen und einen praktischen Teil. ZunĂ€chst muss untersucht werden, welche EinschrĂ€nkungen bezĂŒglich eines allgemeinen Graphersetzers möglich sind. Dann soll dieses System implementiert und anhand beispielhafter Transformationen getestet werden.

Betreuer

Alumni
Prof. Sabine Glesner
Dr. Rubino Geiß

Bearbeiter

Alumni
Prof. Sebastian Hack
Login
Links