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.
 
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.
 
		Die Aufgabenblätter für die Übungsstunden und Hausaufgaben befinden sich auf der zugehörigen OPAL-Seite.