Kursplan för läsåret 2001/2002
OPTIMERANDE KOMPILATOREREDA230
Optimising Compilers

Poäng: 5.0 Betygskala: TH. Valfri för: D4. Kursansvarig: Universitetslektor Jonas Skeppstedt, Jonas.Skeppstedt@cs.lth.se. Förkunskapskrav: Godkänt betyg i EDA025 Algoritmer och datastrukturer.. Rekommenderade förkunskaper: EDA200 Översättarteknik.. Prestationsbedömning: Tentamen är skriftlig. Ett projekt ingår i kursen. Detta skall fullgöras inom tre månader efter kursens slut. Slutbetyget bestäms av betygen på den skriftliga tentamen och ett frivilligt extra projekt. Webbsida: http://www.cs.lth.se

Mål:
Kompilatorn är programmerarens viktigaste verktyg. För att kunna implementera program som är korrekta, effektiva och enkla att underhålla, är det viktigt att programmeraren vet vad han behöver optimera själv och vilket arbete kompilatorn gör bättre och snabbare än människan. Med denna kunskap blir programmeraren mer produktiv.
Kursens mål är att deltagarna efter genomgången kurs skall:
ha gedigen förståelse om optimerande kompilatorers möjligheter och begränsningar
ha ingående kunskap om algoritmer och datastrukturer som används i moderna optimerande kompilatorer.

Innehåll:
Kontrollflödesanalys, dataflödesanalys, beroendeanalys, aliasanalys, elimination av redundans, optimering av loopar, optimering av proceduranrop, registerallokering, schemaläggning av instruktioner, optimering för objektorienterade språk samt optimering av minneshierarkin.

Litteratur:
Skeppstedt J: Theory of Optimising Compilers. Lund, 2000 (kompendium som säljs av institutionen).