Optimierungen in Übersetzern

Lecturers:Philippsen, M.
Coverage:2 SWS (7,5 ECTS)
Comment:Voraussetzung zur Teilnahme an der mündl. Prüfung ist die erfolgreiche Bearbeitung der Übungsaufgaben. Vorlesung wird im SS2019 NICHT angeboten!
Dates & location:
  • Tuesday, 12:15 - 13:45, H4
Audience:WPF CE-MA-INF (1.-4. Semester)
WPF INF-MA (from 1. Semester)
Topics:

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

Audience

Students enrolled in the Master program in Computer Science

Exam/certificate

Schein, benoteter Schein, mdl. Prfg.
Voraussetzung zur Teilnahme an der mündl. Prüfung ist die erfolgreiche Bearbeitung der Übungsaufgaben.
Prüfungstermine

Registration for the exam

Please register for the exam in meinCampus first. After that, send an email to Prof. Philippsen to make an appointment for the exam (available dates for the exam are here). Do not forget your matriculation number in the email. If meinCampus signup is not yet enabled, the other way round is ok too.

Working material

Link

Evaluation Results:

SS 2018, SS 2017, SS 2016, SS 2015, SS 2014, SS 2013, SS 2012, SS 2011, SS 2010, SS 2009, SS 2008, SS 2007, SS 2005, SS 2004, SS 2003, SS 2002, SS 1999, SS 1998, SS 1997, SS 1996.
watermark seal