CS 553: Class Schedule (Fall 2005)

Click on a lecture to get the slides. All project and homework files are in PDF format. Downloading the readings must be done from the csu domain. Each reading should be finished before the lecture with which it appears in the table.

WARNING: The reading schedule is not complete yet.
Date Topic Reading Handouts Due
Aug 22 (M)  Introduction (PDF)   Ch. 1.1-1.5  syllabus  
Aug 24 (W)  Scanning and Parsing (PDF)   Bison Manual Sections 1.1-1.4    
Aug 26 (F)  Undergrad compilers review (PDF)      
Aug 29 (M)  Data-flow analysis, Room 110, 2:10-3:45 (PDF)  Ch 8.1    
Aug 31 (W)  Control-flow analysis (PDF)   Ch 7-7.5    
Sept 2 (F)  Michelle out-of-town, will schedule a make-up lecture
Sept 5 (M)  Labor Day -- No Class
Sept 7 (W)  Michelle out-of-town, will schedule a make-up lecture
Sept 9 (F)  Canceled due to FutureVision 2010  Project 1
Sept 12 (M)  C-Breeze compiler, Generalizing data-flow analysis, and Lattice-theoretic data-flow analysis, Room 110, 2:10-3:45 (PDF)  Using C-Breeze    
Sept 14 (W)  Finish data-flow analysis (PDF)  [Stephenson00]    
Analyses, Representations, and Transformations
Sept 16 (F)  Static single assignment  (PDF)  Ch 8.11    
Sept 19 (M)  Static single assignment Technicalities (PDF)  [Cytron et al 1991] (Optional)    
Sept 21 (W)  Using SSA (PDF)  Ch 12.6, 14.1, 13.2    Schedule for Project 2
Sept 23 (F)  Loop Invariant Code Motion (PDF)  Ch 8.10, 13.2    HW1
Sept 26 (M)  Reuse Optimizations: Value Numbering (PDF)  Ch 12.4, [Alpern and Zadeck 1992]    
Sept 28 (W)  Reuse Optimizations: Common Sub-Expr Elim (PDF)  Ch 13.1    
Sept 30 (F)  Reuse Optimizations: PRE (PDF)  Ch 13.3    
Oct 3 (M)  Pointer and Alias Analysis I (PDF)  Ch 10.1    
Oct 5 (W)  Pointer and Alias Analysis II (PDF)  [Emami 94]    
Oct 7 (F)  Midterm Review (PDF)      HW2
Oct 10 (M)  Midterm Exam (in class)
Oct 12 (W)  Interprocedural Analysis ( PDF)  Ch 19.1, 19.3    
Oct 14 (F)  Interprocedural Analysis and Optimization ( PDF)      
Low-Level Topics
Oct 17 (M)  Register allocation I (PDF)  Ch. 16, especially 16.3.11    
Oct 19 (W)  Register allocation II (PDF)  [Briggs]    
Oct 21 (F)  Finish Register Allocation (PDF)  Ch. 19.6.1    
Oct 24 (M)  Instruction Scheduling I (PDF)      Project 2
Oct 26 (W)  Instruction Scheduling II (PDF)   Ch. 17    
Oct 28 (F)  Profile-guided Optimization (PDF)      
Oct 31(M)  Predication and Speculation (PDF)  [Mahlke 92]    
Nov 2 (W)  Dynamic compilation (PDF)      
High-Level Topics
Nov 4 (F)  Parallelism and Locality (PDF)  [PaduaWolfe96]    
Nov 7 (M)  Array Data Dependence Analysis (PDF)   Ch. 19.3, 19.4    Project 3
Nov 9 (W)  Value Dependence Analysis (PDF)      
Nov 11 (F)  Loop transformations (PDF)  Ch 20.4.2    
Nov 14 (M)  Transformation Frameworks (PDF)      
Nov 16 (W)  Michelle at SC05 -- No Class
Nov 18 (F)  Tiling (PDF)  [LamWolf91]    Project 3
Nov 21 (M)  Fall Recess -- No Class
Nov 23 (W)  Fall Recess -- No Class
Nov 25 (F)  Fall Recess -- No Class
Nov 28 (M)  Compiling OO languages (PDF)      
Nov 30 (W)  Garbage collection, 2:10-3:50 (PDF)   Garbage Collection Basics    HW3
Dec 2 (F)  Dr. Sanjay Rajopadhye      
Emerging Topics
Dec 5 (M)  Run-time reordering transformations (PDF)      
Dec 7 (W)  Beyond optimization - Bug Detection (PDF)      
Dec 9 (F)  Wrap up (PDF)      Project 3
Dec 16 (F)  Final Exam (7am-9am)

These slides originated from a collaboration between Calvin Lin at the University of Texas and E Christopher Lewis at the University of Pennsylvania. They have been modified with their permission.

Michelle Strout
Last modified: December 9, 2005