Fortgeschrittener Compilerbau
- Bereich
- Robotik, Computational and Computer Engineering
- Fachrichtung
- Technische Informatik, Elektrotechnik/Datentechnik
- Art
- Vorlesung V3
- Dozent/Prüfer
- Andreas Koch
- Betreuer
- Julian Oppermann
- Voraussetzungen
- Grundkenntnisse Compilerbau (aus Compiler 1), Algorithmen und Datenstrukturen, Java, Rechnerarchitektur (erworben z.B. durch Technische Grundlagen der Informatik)
- Inhalt
- Die komplizierten Architekturen moderner Prozessoren können in der Praxis nur noch durch den Einsatz hochgradig optimierender Compiler ausgenutzt werden. Innerhalb dieser Compiler hat sich daher stetig die Komplexität von der Erkennung der Quelltexte hin zu deren möglichst effizienter Umsetzung in Maschinen-Code verschoben. In der Lehrveranstaltung geht es um eine praktische Einführung in die dafür benötigten Algorithmen und Datenstrukturen. Vorgestellt werden Analysen und Transformationen dieser Darstellungen mit dem Ziel, optimierten Maschinen-Code zur Ausführung auf modernen Prozessoren zu erhalten. Im begleitenden Praktikum Compilerbau wird ein bestehender Compiler für eine objektorientierte Programmiersprache schrittweise um Optimierungen in Java erweitert.
- Literatur
- • Engineering a Compiler von Keith D. Cooper, Linda Torczon (2. Auflage!)
• Advanced Compiler Design and Implementation von Steven S. Muchnick
• Compilers: Principles, Techniques, and Tools (2. Auflage!) von Aho, Lam, Sethi und Ullman
• sowie ausgewählte wissenschaftliche Veröffentlichungen (siehe unten)
- Credits
- 5,0 CP
- Zeit
- • Dienstags, 16:15-17:55 Uhr
• Donnerstags, 11:40-13:20 Uhr (nur in der ersten Semesterhälfte) - Ort
- S2|02 / C110
- Beginn
- 12.04.2016
- Praktikum
- Parallel zur und eng verzahnt mit der Vorlesung wird ein Praktikum angeboten, dessen Besuch dringend empfohlen wird.
- Diskussionsforum und Ankündigungen
- Im Moodle-Kurs.
- Prüfung
- Die Klausur findet am 01.08.2016 von 11:30-14:00 Uhr im Hörsaal S105/122 statt.
Hilfsmittel sind keine zugelassen. Bitte stellen Sie in jedem Fall sicher, dass Sie sich, Ihrer Studienordnung entsprechend, rechtzeitig bei der für Sie zuständigen Stelle zur Prüfung angemeldet haben! - !!! Klausurergebnisse/Einsicht
- Die vorläufigen Klausurergebnisse sind im TUCaN sichtbar. Die Klausureinsicht findet am 24.08.2016 von 16 Uhr bis 17:30 Uhr in S2|02, Raum E202 statt. Um den Ablauf etwas zu entzerren, tragen Sie sich bitte mit einem Pseudonym in die Doodle-Umfrage ein.
Vorlesungsfolien

Farbig, 1-auf-1 Mit Animationen, Farbig, 1-auf-1

Farbig, 1-auf-1 Mit Animationen, Farbig, 1-auf-1

Farbig, 1-auf-1 Mit Animationen, Farbig, 1-auf-1

Farbig, 1-auf-1 Mit Animationen, Farbig, 1-auf-1

Farbig, 1-auf-1 Mit Animationen, Farbig, 1-auf-1

Farbig, 1-auf-1 Mit Animationen, Farbig, 1-auf-1

Farbig, 1-auf-1 Mit Animationen, Farbig, 1-auf-1

Mit Animationen, Farbig, 1-auf-1

Mit Animationen, Farbig, 1-auf-1
Aufzeichnungen
Die Folien und der Vortrag werden aufgezeichnet. Dabei kann es gelegentlich durch die Tücke der Technik zu Störungen oder Ausfällen kommen. Wir bitten diese zu entschuldigen und hoffen, sie in erneuten Durchgängen zu vermeiden. Die Aufzeichungen selbst sind platzsparend im H.264-Format komprimiert. Falls das von Ihnen verwendete Betriebssystem keinen dafür passenden Codec mitbringt, kann dieser in der Regel problemlos nachinstalliert werden. Für Windows-Varianten könnte dafür bespielsweise die Pakete FFDShow Tryout oder VLC genutzt werden. Unter Linux ist der übliche mplayer direkt in der Lage, die Dateien abzuspielen.

















Ausgewählte wissenschaftliche Veröffentlichungen als Hintergrundmaterial

MARC M. BRANDIS and HANSPETER MÖSSENBÖCK
ACM Transactions on Programming Languages andS ystems 16(6): 1684-1698, Nov.1994 ACM Digital Library

BRIGGS, COOPER, HARVEY, SIMPSON
SOFTWARE PRACTICE AND EXPERIENCE, VOL. 28(8), 1-28 (July 1998) Wiley Online Library

CYTRON, FERRANTE, ROSEN, WEGMAN, ZADECK
ACM Transactions on Programming Languages and Systems (TOPLAS), Volume 13 , Issue 4 (October 1991) ACM Digital Library

BRIGGS, COOPER, SIMPSON
SOFTWARE—PRACTICE AND EXPERIENCE, VOL. 27(6), 701-724 (JUNE 1997) Wiley Online Library

DHANAJAY DHAMDHERE
ACM SIGPLAN Notices, 2002, vol. 37, no 8, pp. 53-65, hier korrigierte Fassung Dhananjay Dhamdhere's publications page - use second item

WEGMAN, ZADECK
ACM TOPLAS, 13(2), April 1991, pp. 181-210 ACM Digital Library

CLICK, COOPER
ACM TOPLAS, 17(2), März 1995, pp. 181-196 ACM Digital Library