| Date | Topics | Reading | Due dates |
|---|---|---|---|
| August 26 (F) | About the course (Notes) | ||
| August 29 (M) | No class | ||
| August 31 (W) | Overview of hardware, programming models (Notes) | 1 (skim), 2.1 through 2.3 | |
| September 2 (F) | More background; introduction to message passing and MPI (Notes) | 2.4 through 2.7, B.1 through B.7 | |
| September 5 (M) | No class (holiday) | ||
| September 7 (W) | No class | ||
| September 9 (F) | No class | ||
| September 12 (M) | No class | ||
| September 14 (W) | More background; more about MPI (Notes) | ||
| September 16 (F) | More about message-passing and MPI (Notes) | Homework 1 (HTML, PDF) | |
| September 19 (M) | Multithreaded programming and Java (Notes) | C.1, C.2, C.3 | |
| September 21 (W) | Multithreaded programming and Java, continued (Notes) | C.4, C.5, C.6, C.7 | |
| September 23 (F) | Multithreaded programming and Java, continued (Notes) | ||
| September 26 (M) | Multithreaded programming and OpenMP (Notes) | A.1, A.2, A.3 | |
| September 28 (W) | Multithreaded programming and OpenMP, continued (Notes) | A.4, A.5, A.6, A.7, A.8 | |
| September 30 (F) | Multithreaded programming and OpenMP, continued (Notes) | ||
| October 3 (M) | No class | ||
| October 5 (W) | No class | ||
| October 7 (F) | No class | ||
| October 10 (M) | Implementation Mechanisms (Notes) | 6 | Homework 2 (HTML, PDF) |
| October 12 (W) | Homework 2 revisited (Notes) | ||
| October 14 (F) | No class (holiday) | ||
| October 17 (M) | Design patterns, our pattern language (Notes) | ||
| October 19 (W) | Example applications (Notes) | ||
| October 21 (F) | Finding Concurrency patterns (Notes) | 3 | |
| October 24 (M) | Finding Concurrency patterns, continued (Notes) | ||
| October 26 (W) | Algorithm Structure patterns (Notes) | 4 | |
| October 28 (F) | Algorithm Structure patterns, continued (Notes) | ||
| October 31 (M) | No class | ||
| November 2 (W) | Algorithm Structure patterns, continued (Notes) | ||
| November 4 (F) | Algorithm Structure patterns, continued (Notes) | Homework 3 (HTML, PDF) | |
| November 7 (M) | Supporting Structures patterns (Notes) | 5.1, 5.2, 5.3, 5.4, 5.5, 5.6, 5.7 | |
| November 9 (W) | Supporting Structures patterns, continued (Notes) | ||
| November 11 (F) | No class (students going to ACM programming competition) | ||
| November 14 (M) | No class | ||
| November 16 (W) | No class | ||
| November 18 (F) | No class | ||
| November 21 (M) | Supporting Structures patterns, continued (Notes) | ||
| November 23 (W) | Discussion of projects (optional) | ||
| November 25 (F) | No class (holiday) | ||
| November 28 (M) | Generic master/worker program (Notes) | Project proposal (HTML, PDF) | |
| November 30 (W) | Heat diffusion problem revisited (Notes) | Homework 4 (HTML, PDF) | |
| December 2 (F) | Generic master/worker program, continued (Notes) | ||
| December 5 (M) | Course wrap-up and evaluations (Notes) | ||
| December 13 (T), 8:30am | Project presentations | Project final report and code (HTML, PDF) |