CS 653: Class Schedule (Spring 2007)

Downloading some of the papers must be done from the csu domain.
Date Topic Paper Student Due
Jan 17 (W)  Introduction (slides)   Syllabus, How to Read an Engineering Research Paper and Basic Research Skills in Computer Science    
Understanding the Problems
Jan 22 (M)   Performance (slides) Quantifying Behavioral Differences Between C and C++ Programs by Brad Calder, Dirk Grunwald, and Benjamin Zorn, GPGPU Computing and the Heterogeneous Multi-Core Future by B. Scott Michel    Paper critique (for remaining weeks, there is a paper critique due once a week, either before Tuesday class or before Thursday class)
Jan 24 (W)  Program Safety (or lack thereof) Defect Detection at Microsoft - Where the Rubber Meets the Road by Manuvir Das, Software Bugs Can be Lethal at CBS News April 29, 2003; Software Hell at Business Week December 6, 1999; also see Well Known Software Failures and Sony CD copy protection controversy    
Analysis Examples and Compiler Infrastructures for Performing Analysis
Jan 29 (M)  Dataflow analysis Examples Finding Bugs is Easy by David Hovemeyer and Bill Pugh and Bidwidth analysis with application to silicon compilation by Stephenson et al.    
Jan 31 (W)  Cetus compiler  Experiences in Using Cetus for Source-to-Source Transformations by Johnson et al.    Select an open paper for presentation to class by Friday
Feb 5 (M)  LLVM compiler  LLVM: A Compilation Framework for Lifelong Program Analysis and Transformation by Lattner and Adve and Automatic Pool Allocation: Improving Performance by Controlling Data Structure Layout in the Heap by Lattner and Adve  open  
Feb 7 (W)  GCC Compiler  Generic and Gimple: A New Tree Representation for Entire Functions by Merrill and in the same file "Tree SSA: A New Optimization Framework for GCC" by Novillo (the papers were extracted from the Proceedings of the GCC Developers Summit 2003). Also Design and Implementation of Tree SSA by Novillo (the paper was extracted from the Proceedings of the GCC Developers Summit 2004).  open  
Feb 12 (M)   Writing a Project Proposal (PDF)  How to Write a Master's Thesis in Computer Science    Proposed tool example, preliminary project proposal
Static Single Assignment
Feb 14 (W)  SSA(slides) Efficiently Computing Static Single Assignment Form and the Control Dependence Graph by Cytron et. al.  open  
Feb 19 (M)  Out-of-town, reschedule for 23rd
Feb 21 (W)  Out-of-town, students should discuss and select mini research exam topics      
Feb 23 (F)  Makeup class Unified Analysis of Array and Object References in Strongly Typed Languages by Fink, Knobe, and Sarkar  open  
Precision versus Efficiency Tradeoff
Feb 26 (M)  Pointer Analysis Survey Pointer Analysis: Haven't We Solved This Problem Yet? by Michael Hind  Andy  
Feb 28 (W) Importance of context and flow sensitivity Client-Driven Pointer Analysis by Samuel Z. Guyer and Calvin Lin  Arun  
March 5 (M)  How to give a talk (PDF)      Project proposal, tool example
March 7 (W)  Shape analysis Connection Analysis: A Practical Interprocedural Heap Analysis for C by Rakesh Ghiya and Laurie J. Hendren  open  
Mar 12 (M)  Spring Break
Mar 14 (W)  Spring Break
March 19 (M)  Improving on Unification-based precision Unification-based pointer analysis with directional assignments by Manuvir Das  open  Mini research exam proposal
Dynamic Analysis
March 21 (W)  Static and Dynamic Analysis Program Analysis: A Hierarchy by Zeller and Static and Dynamic Analysis: Synergy and Duality by Ernst  open  
Mar 26 (M)  Project status reports      Verbal status report
Mar 28 (W)  Path Profiling Efficient Path Profiling by Thomas Ball and James R. Larus  Batsukh  
April 2 (M)  Finishing the project The Elevator Speech    
April 4 (W)  Profiling and Dataflow Analysis Improving Data- Flow Analysis with Path Profiles by Glenn Ammons and James Larus  open  
Data Dependence Analysis
April 9 (M)  Data dependence analysis Advanced compiler optimizations for supercomputers by David A. Padua and Michael J. Wolfe  David  
Apr 11 (W)  Connection between data dependence analysis and the polyhedral model A Dataflow Analysis of Array and Scalar References by Paul Feautrier  open   Intermediate project report
Static/Dynamic Data Dependence Analysis
Apr 16 (M)  Non-affine references  Nonlinear Array Dependence Analysis by Bill Pugh and David Wonnacott  open  
Apr 18 (W)  Hybrid Analysis Hybrid analysis: static and dynamic memory reference analysis by Silvius Rus and Lawrence Rauchwerger and Jay Hoeflinger  open  Mini Research Exam writeups
April 23 (M)  Two Mini Research exams      Mini-Research Exam
April 25 (W)  Two Mini Research exams      Mini-Research Exam
Domain-Specific Code Generation
April 30 (M)  PHiPaC and ATLAS Optimizing Matrix Multiply using PHiPAC: a Portable, High-Performance, ANSI C Coding Methodology by Jeff Bilmes, Krste Asanovic, Chee-whye Chin, and Jim Demmel and ATLAS paper entitled "Automated Empirical Optimization of Software and the ATLAS project"  open  
May 2 (W)  OSKI  OSKI: A library of automatically tuned sparse matrix kernels by Vudoc et al., Related site: Automatic Tuning of Whole Applications: A LACSI Symposium Workshop  open  Elevator speeches and Final project report

Michelle Strout
Last modified: April 27, 2007