8/11/2004: I've archived all of the notes and problem sets and am only leaving up the syllabus for reference. If you're looking for the material, you may be able to find a link to a more recent offering of the class here.
There will be ~3 programming assignments and ~3 written assignments during the semester. Students will also be expected to do a final project.
The spring 2004 version of CS156 meets on Mondays and Wednesdays from 2:45 to 4PM in Andrew 157.
| Week | Monday | Wednesday |
|---|---|---|
| 1/19 | No class (classes start tomorrow) | introduction, motivation (chapter 1) |
| 1/26 | parallel architectures: intro & examples (2.1-2.3) | SIMD machines, intro to distributed memory machines
(2.4-2.5) |
| 2/2 | more on NW topologies, shared memory architectures (2.4) | discussion of matrix mult., shared memory protocols |
| 2/9 | other architectures, programming models | parallelizing an application, MPI (3.1,6.1-6.3) |
| 2/16 | MPI continued, threads (6.1-6.3, 7.1-7.9) | threads, other parallel languages (7.1-7.9) |
| 2/23 | data & mixed parallel languages | compiling for parallelism, parallel algorithm models |
| 3/1 | discussion of AllReduce | no class |
| 3/8 | performance analysis (5.1-5.4) | 5C classes cancelled |
| 3/15 | No class - spring break | No class - spring break |
| 3/22 | basic parallel algorithms (10.1-10.2) | performance models (work-time, PRAM, BSP) |
| 3/29 | performance models (logP), parallelizing applications | partitioning |
| 4/5 | paper presentations | paper presentations |
| 4/12 | partitioning, n-body problem | n-body problem |
| 4/19 | distributed data structures | poisson equation |
| 4/26 | project presentations | project presentations |
| 5/3 | multigrid, parallel genetic algorithms | class cancelled, go to
Presentation Days |