Syllabus academic year 2008/2009
(Created 2008-07-17.)
OPTIMISING COMPILERSEDA230

Higher education credits: 7,5. Grading scale: TH. Level: A (Second level). Language of instruction: The course will be given in Swedish. Optional for: D4, D4dpd, D4ps, E4, E4ps, F4. Course coordinator: Jonas Skeppstedt,, Jonas.Skeppstedt@cs.lth.se, Inst f datavetenskap. Prerequisites: EDA027 Algorithms and Data Structures. Assessment: Written examination. Compulsory programming project which must be completed within a month after the course ends. The final grade is based on the examination and on optional additional project work. Home page: http://www.cs.lth.se/EDA230.

Aim
The purpose of the course is that the students should understand the possibilities and limitations of modern optimising compilers, and thereby understand what they must optimise manually and what the compiler can do automatically.

Knowledge and understanding
For a passing grade the student must

Skills and abilities
For a passing grade the student must

Judgement and approach
For a passing grade the student must

Contents
Control-flow analysis, data-flow analysis, dependence analysis, alias analysis, redundancy elimination, loop optimisations, procedure optimisations, register allocation, code scheduling, optimisation for object oriented languages, optimisation of the memory hierarchy and vectorisation for processors with SIMD instructions, such as AltiVec and CELL.

.

Literature
Skeppstedt, J: An Introduction to the Theory of Optimising Compilers. Lund 2007.