PI5004 Compilerbau: Analyse und Optimierung

Modulverantwortliche
  • Prof. Dr. Uwe Meyer
Lehrende
  • Prof. Dr. Uwe Meyer
Notwendige Voraussetzungen zur Teilnahme

Keine

Empfohlene Voraussetzungen zur Teilnahme

Gute Kenntnisse im Compilerbau

Kurzbeschreibung

Dieser Kurs diskutiert Algorithmen zur Optimierung und deren Umsetzung in einem konkreten Compiler.

Inhalte

Datenflussgleichungen und Liveness, Registerallokation durch Graphenfärbung, lokale Optimierung und Schleifenoptimierungen, Static-Single- Assignment-Form

Qualifikations- und Lernziele

Fachkompetenzen

  • Die Studierenden können Graphenalgorithmen im Compilerbau, speziell im Hinblick auf Registerallokation und Optimierungen/Schleifenoptimierungen erklären.

Methodenkompetenzen (fachlich & überfachlich)

  • Die Studierenden können die Algorithmen in einem gegebenen Compiler praktisch umsetzen.

Sozialkompetenzen

  • Die Studierenden können die Algorithmen in Teamarbeit gemeinsam umsetzen.

Selbstkompetenzen

  • Sie können ihren Lernfortschritt reflektieren und ihr Lernverhalten ggf. (methodisch/zeitlich) anpassen.
ECTS-Leistungspunkte (CrP)
  • 6 CrP
  • Arbeitsaufwand 180 Std.
  • Präsenzzeit 60 Std.
  • Selbststudium 120 Std.
Lehr- und Lernformen
  • 4 SWS
  • Vorlesung 2 SWS
  • Projekt 2 SWS
Studiensemester
  • Informatik (M.Sc. 2022)
Dauer
1 Semester
Häufigkeit des Angebots
Nach Bedarf
Unterrichtssprache
Deutsch
Bonuspunkte

Ja

Bonuspunkte werden gemäß § 9 (4) der Allgemeinen Bestimmungen vergeben. Art und Weise der Zusatzleistungen wird den Studierenden zu Veranstaltungsbeginn rechtzeitig und in geeigneter Art und Weise mitgeteilt.

Prüfungsleistungen

Prüfungsvorleistung: Hausübungen oder Projektarbeit (Art der Vorleistung sowie Anzahl der Hausübungen wird den Studierenden rechtzeitig und in geeigneter Weise bekannt gegeben.)

Prüfungsleistung: Klausur, mündliche Prüfung oder Präsentation der Projektergebnisse (Art des Leistungsnachweises wird den Studierenden rechtzeitig und in geeigneter Weise bekannt gegeben.)

Benotung
Die Bewertung des Moduls erfolgt gemäß §§ 9, ggf. 12 (Teilleistungen), ggf. 18 (Arbeiten, Kolloquien) der Allgemeinen Bestimmungen (Teil I der Prüfungsordnung).
Verwendbarkeit
Gemäß § 5 der Allgemeinen Bestimmungen (Teil I der Prüfungsordnung) Verwendbarkeit in allen Masterstudiengänge der THM möglich.
Literatur, Medien
  • Cooper, K. D.; Torczon, L.: Engineering a Compiler. Morgan Kaufmann.
  • Appel, A. W.: Modern Compiler Implementation in Java, Second Edition. Cambridge University Press.
  • Muchnick, S. S.: Advanced Compiler Design & Implementation. Morgan Kaufmann.
  • Aho, A. V.; Sethi, R.; Ullmann, J. D.: Compilerbau, Teil 2. Addison-Wesley.
  • Grune, D.; van Reeuwijk, K.; Bal, H. E.; Jacobs, C. J. H.; Langendoen, K.: Modern Compiler Design. Springer Verlag.

Rechtliche Hinweise