Location Olin 218
Course calendar
| Date | Topic and materials |
|---|---|
| Thu · Sep 3 | Course introduction, why parallel computing matters, and Module 0: Getting Started with PicoClusterFor next time: Read the syllabus, obtain the textbook and read Chapter 1, and review Module 0. |
| Tue · Sep 8 | Module 1: C and Performance BasicsFor next time: Continue working through Module 1 and experimenting with serial program timings. |
| Thu · Sep 10 | Module 1, continued: Does memory order matter? Compare row and column traversal, repeat the timings, and discuss memory locality.For next time: Start working on Project 1. |
| Tue · Sep 15 | Module 2: Introduction to MPI — processes, messages, and dividing work.For next time: Read §3.1, “Getting started” (pp. 90–100), in the textbook. Skim §3.2 (pp. 100–105), focusing on how the processes divide the work and combine their results. |
| Thu · Sep 17 | Module 3: MPI collective communication — reduction, broadcast, and the trapezoidal rule.For next time: Read §§3.4.1–3.4.5 (pp. 108–116) in the second-edition textbook. Review §3.2 (pp. 100–105) alongside our area example. Continue working on Project 1, due Tuesday. |
| Tue · Sep 22 | Module 4: Distributing Arrays with MPI — block distributions, scatter, and gather.For next time: Read §§3.4.6–3.4.8 (pp. 116–120) in the second-edition textbook and review Module 4.Due: Project 1: Serial Performance — submit to Moodle by 11:59 p.m. |
| Thu · Sep 24 | Module 5: Talking to Neighboring Processes — MPI_Sendrecv and a one-step heat-flow example. Project 2: Prime Number Census with MPI assigned.For next time: Read the MPI_Sendrecv discussion in Chapter 3, §3.7, revisit §§3.4.6–3.4.9, and try the Module 5 command-line example. Start Project 2. |
| Tue · Sep 29 | Module 6: Estimating Pi with MPI — Monte Carlo sampling, broadcast, reduction, and timing. Introduce the Exam 1 study guide.For next time: Work through the study guide and bring questions. Exam 1 is on paper Thursday, October 8; continue Project 2. |
| Thu · Oct 1 | Module 7: More MPI — improve the trapezoid program and sort values through neighbor exchanges. We will also go over the Exam 1 study guide in class. For next time: Continue Project 2 and bring questions; review the study guide before the paper exam on Thursday, October 8. |
| Tue · Oct 6 | Module 8: Introduction to Pthreads — shared memory, creating and joining threads, and dividing a sum.For next time: Read Chapter 4, §§4.1–4.3, and prepare for Exam 1 using the study guide. Pthreads begins our next unit and is not on this exam.Due: Project 2: Prime Number Census with MPI — submit to Moodle by 11:59 p.m. |
| Thu · Oct 8 | Exam 1: C, Performance, and MPI — on paper. Study guide. |
| Tue · Oct 13 | — |
| Thu · Oct 15 | — |
| Tue · Oct 20 | — |
| Thu · Oct 22 | No class — Fall Academic Holiday |
| Tue · Oct 27 | — |
| Thu · Oct 29 | — |
| Tue · Nov 3 | — |
| Thu · Nov 5 | No class — Everything Fab Four Fest: REVOLVER |
| Tue · Nov 10 | — |
| Thu · Nov 12 | — |
| Tue · Nov 17 | — |
| Thu · Nov 19 | — |
| Tue · Nov 24 | No class — Thanksgiving Holiday |
| Thu · Nov 26 | No class — Thanksgiving Holiday |
| Tue · Dec 1 | — |
| Thu · Dec 3 | — |
| Tue · Dec 8 | — |
| Thu · Dec 10 | — |
Final examinations
NoteOfficial exam time
The final examination is Wednesday, December 16 · 3:00–5:30 p.m., following the College’s published time for Tuesday/Thursday classes beginning at 2:30 p.m.