Optimierung im Compilerbau SS24
Weitere Informationen sowie die Unterlagen zur Veranstaltung finden Sie im OPAL-Kurs.
Vorlesungsinhalt
Die Vorlesung (Compilerbau 2) beschäftigt sich mit der Codeerzeugung (Synthesephase) und damit verbundenen Optimierungen des Compilerbaus. Im Einzelnen werden die folgenden Themengebiete behandelt:
- Erzeugung von 3-Adress-Code aus dem Ableitungsbaum, insbesondere für Felder
- Erzeugung von Assemblercode
- Registerverteilung
- Datenflussanalyse
- Optimierende Transformationen zur Verbesserung des Programmverhaltens
- Datenabhängigkeitsanalysen
- Programmtransformationen für Felder
Die Vorlesung wird in deutscher Sprache angeboten.
Der Vorlesungsinhalt wird zum Teil als Folienvortrag und zum Teil durch Tafelvorlesung vermittelt.
Voraussetzung für die Teilnahme
Grundlegende Kenntnisse in
- imperativer Programmierung,
- Rechnerarchitektur,
- Graphentheorie,
- Algorithmen und Grammatiken.
Literaturempfehlungen
- Randy Allen, Ken Kennedy: Optimizing Compilers for Modern Architectures: A Dependence-based Approach, Morgan Kaufmann, 2002.
- Alfred Aho, Monica Lam, Ravi Sethi, Jeffrey Ullman: Compilers: Principles, Techniques, and Tools, 2. Ausgabe, Addison Wesley, 2007.
Deutsche Übersetzung: Compiler: Prinzipien, Techniken und Werkzeuge, 2. Auflage, Pearson Studium, 2008 - Steven Muchnick: Advanced Compiler Design & Implementation, Morgan Kaufmann, 1997.
- Michael Wolfe: High-Performance Compilers for Parallel Computing, Addison Wesley, 1995.