The following table is a tentative syllabus for this course:
| Week | Monday | Wednesday | Friday |
|---|---|---|---|
| 1 | Overview | MPI Assignment 1 | MPI Intro |
| 2 | The MPI Model | MPI Assignment 2 | History: The Early Days |
| 3 | History: The 70s and 80s | MPI Assignment 3 | Designing Parallel Algorithms |
| 4 | MPI Synchrony and Types | MPI Assignment 4 | History: Recent Developments |
| 5 | MPI Process Groups | project time | Parallel Matrix Multiplication |
| 6 | Topologies I | MPI Assignment 5 | Topologies II |
| 7 | Parallel Sorting | project time | TBA |
| 8 | Complexity | MPI Assignment 6 | O-O MPI (C++) |
| 9 | Client-Server Networking | project time | Distributed Apps |
| 10 | SMPs and Multithreading | MPI Assignment 7 | Code Optimization |
| 11 | Distributed HPC I | POSIX Threads | Distributed HPC II |
| 12, 13, 14 | TBA | ||