Springe zum Hauptinhalt
Professur Praktische Informatik
Lehrveranstaltungen

Optimierung im Compilerbau

Vorlesungsinhalt

Die Vorlesung beschäftigt sich mit klassischen Optimierungsverfahren des Compilerbaus und mit Optimierungsverfahren für Speicherhierarchien oder Parallelrechner. Im Einzelnen werden die folgenden Themengebiete behandelt:
  • Datenflussanalyse und optimierende Transformationen zur Verbesserung des Programmverhaltens;
  • Datenabhängigkeitsanalysen zur Ausnutzung von mehreren Funktionseinheiten moderner Mikroprozessoren;
  • Lokalitäts- und Parallelitätsanalyse von Programmen;
  • Programmtransformationen zur Optimierung von Programmen für Rechner mit Speicherhierarchien.
Qualifikationsziele:Kenntnisse zur Optimierung im Compilerbau
Die Vorlesung wird in deutscher Sprache angeboten.

Voraussetzung für die Teilnahme

Grundlegende Kenntnisse in
  • imperativer Programmierung,
  • Rechnerarchitektur,
  • Graphentheorie,
  • Algorithmen und Grammatiken

Literaturempfehlungen

  • Allen, Kennedy: Optimizing Compilers for Modern Architectures, Morgan Kaufmann, 2002.
  • Aho, Lam, Sethi, Ullman: Compilers: Principles, Techniques, and Tools, Addison Wesley, 2. Auflage, 2007.
  • Muchnick: Advanced Compiler Design & Implementation, Morgan Kaufmann, 1997.
  • Wolfe: High-Performance Compilers for Parallel Computing, Addison Wesley, 1995.

Übungsaufgaben

Die regelmäßige Bearbeitung und Abgabe der Lösungen zu den Übungsaufgaben sowie die aktive Teilnahme an den Übungsstunden wird empfohlen.
 
Die Aufgabenblätter für die Übungsstunden und Hausaufgaben befinden sich auf der zugehörigen OPAL-Seite.

Vorlesungsfolien

  • Teil 1 (Erzeugung einer Zwischendarstellung) Stand 13.4.2015
  • Teil 2 (Codeerzeugung) Stand 13.4.2015
  • Teil 3 (Kontroll- und Datenflussanalyse) Stand 11.5.2015
  • Teil 4 (Datenabhängigkeitsanalyse) Stand 16.6.2015