Course schedule
| Week | Lecture | Slides | Assignments | Peer-review comments |
|---|---|---|---|---|
| 1 | Course introduction | L0 | HW0 release | |
| 2 | Parallel and distributed programming | L1 | ||
| 3 | Introduction to parallel hardware and software | L2 | HW1 release | |
| 4 | Shared-memory programming with Pthreads | L3-1 | ||
| 5 | Shared-memory programming with Pthreads | L3-2 | HW1 due HW2 release | |
| 6 | Shared-memory programming with OpenMP | L4-1 | ||
| 7 | Shared-memory programming with OpenMP | L4-2 | HW2 due HW3 release | |
| 8 | Distributed-memory programming with MPI | L5-1 L5-2 | ||
| 9 | Data parallel programming with CUDA | L6 | HW3 due HW4 release | |
| 10 | Data parallel programming with CUDA/OpenCL | L7 | ||
| 11 | Data parallel programming with OpenCL/OpenACC | L8 | HW4 due HW5 release | |
| 12 | Distributed-memory programming with MapReduce | L9 | ||
| 13 | Final project presentations | HW5 due HW6 release | ||
| 14 | Final project presentations | |||
| 15 | Final project presentations | HW6 due | ||
| 16 | Final project presentations |