Markus Schordan, TU Wien
Ziel der Lehrveranstaltung
Die Effizienz von Programmen ist entscheidend davon abhängig, welche
Optimierungen automatisch vom Compiler durchgeführt werden
können. Das Ziel ist ein tieferes Verständnis für die
Möglichkeiten und Beschränkungen einiger ausgewählter Analysen und
Optimierungen zu vermitteln. Dies soll dazu führen, Software in
Zukunft so schreiben zu können, dass bei Vertrauen auf die
Optimierungsmöglichkeiten des Compilers, Design und Implementierung
von Software nicht mehr unnötigen Effizienzüberlegungen unterworfen
wird.
Termine
Die Lehrveranstaltung wird im Wintersemester 2006/2007 abgehalten. Die Vorbesprechung und Anmeldung findet am Mittwoch,
4.10.2006, um
14:30 im
FH Hörsaal 4 statt. Die Vorlesung findet jeweils Mittwochs von
14:15 s.t. bis 16:00 in der Bibliothek (Argentinierstrasse 8, 4. Stock) statt. Die erste Vorlesung findet am
11.10.2006 im FH HS4 statt.
Datum | Zeit | Ort | Inhalt | Spezifische Literaturangaben |
Mi 04.10.2006 | 14:30-15:00 s.t. | FH HS 4 | Vorbesprechung und Anmeldung (pdf) | - |
Mi 11.10.2006 | 14:15-16:00 s.t. | FH HS 4 |
Übersicht über Architekturen und Optimierungstechniken (pdf, handouts), PAG/ROSE Infrastruktur | [L4:Kapitel 1], [L3:Kapitel 1+10] |
Mi 18.10.2006 | 14:15-16:00 s.t. | BIB |
Mi 25.10.2006 | 14:15-16:00 s.t. | BIB | Intra-Prozedurale Datenflussanalyse (vorwärts) (pdf, handouts) | [L1:Kapitel 1, 2.1-4],[L4:Kapitel 8] |
Mi 25.10.2006 | 16:15-18:00 s.t. | BIB | Intra-Prozedurale Datenflussanalyse (rückwärts) (pdf, handouts) | [L1:Kapitel 2.1-4], [L4:Kapitel 8] |
Mi 08.11.2006 | 14:15-16:00 s.t. | BIB | Datenflussrahmen (pdf, handouts) und Inter-Prozedurale Datenflussanalyse (pdf, handouts) | [L1:Kapitel 2.5, Kapitel 6] |
Di 21.11.2006 | 09:00-17:00 | Büro | UE: Individuelle Besprechung aller bisherigen Abgaben (Termine) | PAG |
Di 28.11.2006 | 14:15-16:00 s.t. | Bespr.raum Gallerie | Aliasanalyse (pdf, handouts) | [L1:Kapitel 2.6], [L4:Kapitel 10], [L2:Kapitel 5] |
Mi 06.12.2006 | 14:15-16:00 s.t. | BIB | Optimierungen für objektorientierte Sprachen (pdf, handouts) | [L2:Kapitel 6] |
Mi 13.12.2006 | 09:00-17:00 | Büro | Mündliche VO-Prüfung (Termine) | alle bisherigen Angaben |
BIB: Argentinierstrasse 8, 4. Stock, 185.1, Bibliothek.
UE Angaben
Angaben | Abgaben |
Angabe 1 (pdf, ps) | Di 07.11.06 14:00 |
Angabe 2 (pdf, ps) | Di 07.11.06 14:00 |
Angabe 3 (pdf, ps) | Di 21.11.06 14:00 |
Angabe 4 (pdf, ps) | Di 05.12.06 14:00 |
Inhalt der Lehrveranstaltung
- Vorlesung: Datenflussanalyse, maschinenunabhängige Optimierungen, Aliasanalyse und Optimierungen für objektorientierte Sprachen.
- Übung: unter Verwendung von PAG. Um einen ersten Eindruck von PAG zu bekommen, kann man auf der PAG/WWW website einige Analysen fuer eine einfache WHILE Sprache laufen lassen.
Leistungsnachweis
Beurteilung der Beispiele und mündliche Prüfung.
Vorkenntnisse, empfohlene Lehrveranstaltungen
Die Vorlesung bietet sich insbesondere für Teilnehmer der
Lehrveranstaltung 185.548 VO-Übersetzerbau zur Vertiefung an. Eine
vorausgegangene Teilnahme an dieser Veranstaltung ist hilfreich, aber
nicht Voraussetzung.
Skriptum
Das Skriptum ist ab Mi 11.10.2006 erhältlich und wird am Ende der ersten Vorlesung im HS 4 verkauft.
Literatur
- [L1] Flemming Nielson, Hanne Riis Nielson, Chris Hankin:
Principles of Program Analysis.
Springer, (2nd edition, 452 pages, ISBN 3-540-65410-0), 2005.
- [L2] Y. N. Srikant, Priti Shankar:
The Compiler Design Handbook: Optimizations & Machine Code Generation,
CRC Press; 1st edition, (928 pages, ISBN: 084931240X), 2002.
- [L3]
Keith D. Cooper, Linda Torczon:
Engineering a Compiler,
Morgan Kaufmann; (801 pages, ISBN: 155860698X), 2003.
- [L4]
Steven S. Muchnick:
Advanced Compiler Design and Implementation,
Morgan Kaufmann; (856 pages, ISBN: 1558603204), 1997.
Vortragender
Markus Schordan, Tel.: 58801/18516, E-mail: markus@complang.tuwien.ac.at