Optimierungen in Übersetzern (UE2)
Diese Vorlesung und die zugehörigen Übungen finden letztmals im SS 2026 statt.
Sie finden alle aktuellen Informationen und Materialien in StudOn bzw. Campo. Die folgenden Daten wurden automatisch aus Campo übernommen:
Vorlesung:
Grunddaten
Titel | Optimierungen in Übersetzern |
---|---|
Kurztext | inf2-ue2 |
Turnus des Angebots | nur im Sommersemester |
Semesterwochenstunden | 2 |
Voraussetzung zur Teilnahme an der Prüfung ist die erfolgreiche Bearbeitung der Übungsaufgaben.
Parallelgruppen / Termine
In der Vorlesung werden ausgewählte Kapitel aus dem Übersetzerbau besprochen.
Schwerpunktmäßig werden Optimierungstechniken für die Übersetzung imperativer Programmiersprachen diskutiert, insbesondere solche, die für Hochleistungsrechner und Parallelrechner von Bedeutung sind. Begleitend dazu werden einige oft verwendere Techniken und Repräsetationsformen vorgestellt, die erforderlich sind, um die zur Optimierung benötigten Informationen geeignet zu berechnen bzw. zu verwalten.
Die folgenden Stichworte geben einen Überblick über die in der Vorlesung angesprochenen Einzelthemen:
- Abhängigkeitsanalyse, Abhängigkeitsgraph, Array-Index-Analyse, SSA Graph, Steuerungsflußgraph, Dominatoren,
- datenflußbasierte Schleifentransformationen: Strength Reduction, Elimination von Induktionsvariablen, Verschiebung von schleifeninvariantem Code, Schleifenentzweigung,
- Schleifenumordnungen: Schleifenvertauschung, Wellenparallelisierung, Schleifenumkehr, Strip Mining, Kachelbildung, Schleifenaufspaltung, Schleifenvereinigung,
- Schleifenrestrukturierung: Ausrollen, Schleifenzusammenfassung, Schleifenersetzung: Reduktion, Schleifenmustererkennung,
- Speicherzugriffstransformationen: Array-Padding, Speicherbank-Konflikte, Skalarexpansion und Array-Kontraktion,
- Partielle Auswertung: Konstantenpropagierung, Konstantenfaltung, Algebraische Vereinfachungen, Strength Reduction,
- Redundanzentfernung: unerreichter Code, unnötiger Code, tote Variablen, gemeinsame Teilausdrücke,
- Prozeduraufruftransformationen: Blattprozeduren, Inlining, Prozedurduplizierung, Prozedureinbettung, Rekursionselimination, Funktionsvorauswertung,
- Optimierungen für Parallelrechner: Datenaufspaltung, Skalarreplikation, Arrayreplikation, Daten- und Aktivitätsausrichtung, Guards, Botschaftenkombination, Latenzzeitverbergung, Prefetch und Poststore, Synchronpunktelimination,
- Pointer- und Aliasanalyse
Die Materialien zur Lehrveranstaltung werden über StudOn bereitgestellt.
1. Parallelgruppe
Semesterwochenstunden | 2 |
---|---|
Lehrsprache | German |
Verantwortliche/-r |
David Schwarzbeck Tobias Heineken Prof. Dr. Michael Philippsen |
Zeitpunkt | Startdatum - Enddatum | Ausfalltermin | Durchführende/-r | Bemerkung | Raum |
---|---|---|---|---|---|
wöchentlich Do, 16:15 - 17:45 | 24.04.2025 - 24.07.2025 | 29.05.2025 01.05.2025 19.06.2025 |
|
Übungen:
Grunddaten
Titel | Übungen zu Optimierungen in Übersetzern |
---|---|
Kurztext | inf2-ueb-uebersetzer |
Turnus des Angebots | nur im Sommersemester |
Semesterwochenstunden | 2 |
Zeit und Ort für die Übungen werden in der ersten Vorlesungsstunde vereinbart.
Parallelgruppen / Termine
In der Übung werden die in der Vorlesung vorgestellten Konzepte und Algorithmen zur Optimierung von Programmen durch einen Übersetzer wiederholt und vertieft.
Im Rahmen der Projektübungen erweitern die Übungsteilnehmer den in Übersetzerbau 1 implementierten Übersetzer um eine Auswahl der vorgestellten Algorithmen.
Die Materialien zur Lehrveranstaltung werden über StudOn bereitgestellt.
1. Parallelgruppe
Semesterwochenstunden | 2 |
---|---|
Lehrsprache | German |
Verantwortliche/-r |
Tobias Heineken Prof. Dr. Michael Philippsen David Schwarzbeck |
Zeitpunkt | Startdatum - Enddatum | Ausfalltermin | Durchführende/-r | Bemerkung | Raum |
---|---|---|---|---|---|
wöchentlich Fr, 10:15 - 11:45 | 25.04.2025 - 25.07.2025 | 20.06.2025 |
|
In der Übung werden die in der Vorlesung vorgestellten Konzepte und Algorithmen zur Optimierung von Programmen durch einen Übersetzer wiederholt und vertieft.
Im Rahmen der Projektübungen erweitern die Übungsteilnehmer den in Übersetzerbau 1 implementierten Übersetzer um eine Auswahl der vorgestellten Algorithmen.
Die Materialien zur Lehrveranstaltung werden über StudOn bereitgestellt.
2. Parallelgruppe
Semesterwochenstunden | 2 |
---|---|
Lehrsprache | German |
Verantwortliche/-r |
David Schwarzbeck Tobias Heineken Prof. Dr. Michael Philippsen |
Zeitpunkt | Startdatum - Enddatum | Ausfalltermin | Durchführende/-r | Bemerkung | Raum |
---|---|---|---|---|---|
wöchentlich Mo, 10:15 - 11:45 | 28.04.2025 - 21.07.2025 | 09.06.2025 |
|
In der Übung werden die in der Vorlesung vorgestellten Konzepte und Algorithmen zur Optimierung von Programmen durch einen Übersetzer wiederholt und vertieft.
Im Rahmen der Projektübungen erweitern die Übungsteilnehmer den in Übersetzerbau 1 implementierten Übersetzer um eine Auswahl der vorgestellten Algorithmen.
Die Materialien zur Lehrveranstaltung werden über StudOn bereitgestellt.
3. Parallelgruppe
Semesterwochenstunden | 2 |
---|---|
Lehrsprache | German |
Verantwortliche/-r |
David Schwarzbeck Prof. Dr. Michael Philippsen Tobias Heineken |
Zeitpunkt | Startdatum - Enddatum | Ausfalltermin | Durchführende/-r | Bemerkung | Raum |
---|---|---|---|---|---|
wöchentlich Mo, 14:15 - 15:45 | 28.04.2025 - 21.07.2025 | 09.06.2025 |
|