CSC 573 Advanced Seminar on Modeling and Improving Large-Scale Program Behavior

Time and place: Tuesdays 1-3pm, CSB 703.
Instructor: Chen Ding, Prof., CSB 710, cding@cs.rochester.edu, office hours Fridays 11am-12pm

Large, complex software exhibit emergent behavior at the program level that can often be modeled, predicted, and improved (so we think). In this seminar we will review classic studies, examine the current research, and discuss open questions.


Lectures and assigned reading


The syllabus


1. Locality: programmed or universal? (1 week, Einstein 1935, Bell
   inequality 1964, GHZ proof 1990)

2. Memory system models (2 weeks, stack distance, Mattson et al. 1970,
   A.J. Smith 1976; working set, Denning 1980; I/O complexity, Kung
   1980)

3. Program locality models (3 weeks, distance, frequency, stream, and
   dependence models; reuse signature pattern, reference affinity,
   program phases)

4. General system models (2 weeks, entropy, large-number theory,
   Markov process, queuing models)

5. Dynamic program/system optimization (4 weeks, code/data/object
   layout, data/code/path sampling, dynamic compilation, memory
   management)

6. Related topics (2 weeks, dynamic parallelization, correctness
   checking, fault tolerance)

Students need to attend classes, read assigned papers, select two
topics, present them in half-hour slots and lead their discussions.
The remaining term project is a survey paper on the two selected
topics and their relations or a paper on some other subject of mutual
interest between the student and the instructor.

This seminar is not expected to recur in the next few years.  I highly
recommend the (timeless) material in the first half of the seminar.
Feel free to sit in.

The seminar does *not* count as credits for the breadth requirement in
systems.

Additional reading


cding@cs.rochester.edu
Last modified: Mon Apr 11 16:49:18 EDT 2005