CSE 231 - Advanced Compilers
Welcome to CSE 231!
Click on links below to get to a certain section of the webpage.
Check the News Section often. It will have all updates regarding the class posted regularly.
This course focuses on the analysis and optimization phases of compilers.
Lecture Times and Location
- Tuesdays and Thursdays, 3:30 pm - 4:50 pm in Center Hall 201
The first half of the class will cover advanced compiling from the recommended text, Advanced Compiler Design and Implementation} by Steven S. Muchnick, 1997, Morgan Kaufmann publishers, with lectures mainly from chapters 7, 8, 9, 11, 12, 13, and 14. ( You needn't buy the book.) In the second half, we will be discussing papers which we have all read in advance of the class. The papers will be taken from the "classics'' as well as some recent papers taken from selected topics, such as empirical-driven optimization guidance; domain- specific language issues; compiling for network and mobile devices; and runtime optimization. Class members will take turns leading discussions. Each week, when not leading a class discussion, you will in addition write a critical review of one of the papers discussed that week. In addition, students will do (small) projects of their own choosing.
Class Requirements and Grading
- Homeworks covering the text (20 %)
- Class participation and leading discussions on papers (20%)
- Weekly critical reviews of papers (20%)
- Project of your choice (40%)
- Please check this area often for all updates.
- If you have already given your presentation, but have not yet emailed it to me, please do so. (You can check to see if its available on paper list ).
- Our last class (Thurs Dec 1) will meet in CSE 4140 from 3:30 - 6 pm, for in class project summaries. You will be giving a 3 minute
Elevator Speech on your project.
- Re paper reviews: you only need to hand in two of
three (as per the schedule). Reviews should NOT be of the paper you
presented, but any one of the other papers. Reviews should not merely be a
summary, but focus on some aspect of the paper (see guidelines).
Reviews will be graded on both technical content and writing on a
scale of Check (plus to minus).
- Jeanne's usual office hour on Monday, Dec. 5 will not take place 330-430 pm, but instead, she will be available TUES DEC 6 from 11-12. Projects can be turned in at that time.
See the Guidelines for some suggestions on papers.
Papers for Reading and Discussion
Your project can take one of three forms:
- A survey of major research results in a particular area related to the course. You will need to identify the area, propose a set of 8-10 papers, and write a 6-10 page report.
- A proposal for new research related to the course. You will need to identify the area, propose a set of 4-5 papers as background, and write a 6-10 page report describing and justifying the problem or question that you are proposing, and outlining a method for approaching the problem.
- An implementation or experiments extending the work of a chosen paper. You will need to identify the paper, propose a set of experiments or implementation, and write a 4-5 page report describing your problem, your implementation, and the results.
| Advanced Compiler Design & Implementation. (not required)
(The errata web page for the text is here.)
Course Guidelines for Homework, Discussions, Papers, and Reviews
September 29, 2005