...
| Day | Date (2011) | Topic | Handouts | Slides | Homework Assigned | Homework Due |
---|---|---|---|---|---|---|---|
1 | Mon | Jan 10 | Lecture 1: The What and Why of Parallel Programming |
| |||
2 | Wed | Jan 12 | Lecture 2: Task Creation & Termination using Async & Finish |
|
| ||
3 | Fri | Jan 14 | Lecture 3: Computation Graphs, Abstract Performance Metrics | lec3-handout | HW1 | ||
- | Mon | Jan 17 | School Holiday |
|
|
|
|
4 | Wed | Jan 19 | Lecture 4: Futures --- Tasks with Return Values |
|
| ||
5 | Fri | Jan 21 | Lecture 5: Parallel Array Sum and Array Reductions |
| HW2 | ||
6 | Mon | Jan 24 | Lecture 6: Data Races and How to Avoid Them |
| |||
7 | Wed | Jan 26 | Lecture 7: Parallel Prefix Sum, Forall parallel loops |
|
| ||
8 | Fri | Jan 28 | Lecture 8: Parallel Quicksort | lec8-handout |
|
| |
9 | Mon | Jan 31 | Lecture 9: PRAM model, Amdahl's Law |
|
| ||
10 | Wed | Feb 02 | Lecture 10: Critical sections and the Isolated statement |
|
|
| |
- | Fri | Feb 04 | No Lecture, School closed due to bad inclement weather |
|
|
|
|
11 | Mon | Feb 07 | Lecture 1211: Abstract vs Real Performance, Work-sharing & Work-stealing schedulers |
|
| HW4 (Written Assignment) | HW3 |
12 | Wed | Feb 09 | Lecture 1312: Guest Lecture (John Mellor-Crummey Barrier Synchronization (Phasers I) |
|
| HW4 (Written Assignment) |
|
13 | Fri | Feb 11 | Lecture 14: Guest Lecture (John Mellor-Crummey13: Split-phase Barriers (Phasers II) |
|
|
|
|
14 | Mon | Feb 14 | Lecture 15: Barrier 14: Point-to-point Synchronization (Phasers IIII) |
|
|
|
|
15 | Wed | Feb 16 | Lecture 16: Split-phase Barriers (Phasers II) 15: Successive Over Relaxation case study |
|
|
|
|
16 | Fri | Feb 18 | Lecture 17: Point-to-point Synchronization (Phasers III16: Guest Lecture (John Mellor-Crummey) |
|
|
| HW4 |
17 | Mon | Feb 21 | Lecture 18: Successive Over Relaxation case study 17: Isolated statement vs Java Atomic Variables |
|
|
|
|
18 | Wed | Feb 23 | Lecture 1918: Midterm Summary |
|
| Midterm Exam (Take-home) |
|
- | Fri | Feb 25 | No lecture, Exam1 due today |
|
| HW5 (Written Assignment) | Midterm Exam (Take-home) |
- | M-F | Feb 28 - Mar 04 | Spring Break |
|
|
|
|
19 | Mon | Mar 07 | Lecture 2019: Map Reduce |
|
|
|
|
20 | Wed | Mar 09 | Lecture 2120: Generalized Scan |
|
|
|
|
21 | Fri | Mar 11 | Lecture 2221: Task Affinity with Places |
|
| HW6 (Programming Assignment) | HW5 |
22 | Mon | Mar 14 | Lecture 2322: Task Affinity with Places, contd. |
|
|
|
|
23 | Wed | Mar 16 | Lecture 2423: Bounded Buffers |
|
|
|
|
24 | Fri | Mar 18 | Lecture 2524: Java Concurrent Collections |
|
|
|
|
25 | Mon | Mar 21 | Lecture 2625: Data Flow Programming |
|
|
|
|
26 | Wed | Mar 23 | Lecture 2726: Data Flow Programming, contd |
|
|
|
|
- | Fri | Mar 25 | Midterm Recess |
|
|
|
|
27 | Mon | Mar 28 | Lecture 2827: Java Threads and synchronized statement |
|
|
|
|
28 | Wed | Mar 30 | Lecture 2928: GUI Applications |
|
|
|
|
29 | Fri | Apr 01 | Lecture 3029: Java Executors |
|
| HW7 (Programming Assignment) | HW6 |
30 | Mon | Apr 04 | Lecture 3130: Java Locks & Conditions |
|
|
|
|
31 | Wed | Apr 06 | Lecture 3231: Java Synchronizers |
|
|
|
|
32 | Fri | Apr 08 | Lecture 3332: Deadlock, Livelock, Liveness |
|
|
|
|
33 | Mon | Apr 11 | Lecture 3433: Java Memory Model and Volatile Variables |
|
|
|
|
34 | Wed | Apr 13 | Lecture 3534: GPGPU programming with CUDA |
|
|
|
|
35 | Fri | Apr 15 | Lecture 3635: CUDA contd. |
|
|
|
|
36 | Mon | Apr 18 | Lecture 3736: Distributed-memory programming with MPI |
|
|
|
|
37 | Wed | Apr 20 | Lecture 3837: MPI contd. |
|
|
|
|
38 | Fri | Apr 22 | Lecture 3938: Course Summary |
|
| Final Exam (Take-home) | HW7 |
- | Fri | Apr 29 |
|
|
|
| Final Exam (Take-home) |
...
Lab # | Date (2011) | Topic | Handouts |
---|---|---|---|
1 | Jan 11, 12 | Infrastructure setup | |
2 | Jan 18, 19 | Abstract performance metrics with async & finish | |
3 | Jan 25, 26 | Data race detection | |
4 | Feb 01, 02 | Points, regions, forall loops | |
5 | Feb 08, 09 Isolated statements and Java atomic operations | Abstract vs Real Performance, Work-sharing & Work-stealing schedulers |
|
6 | Feb 15, 16 | Phasers |
|
- | Feb 22, 23 | No lab because of (midterm week) |
|
7 | Mar 08, 09 | Map Reduce & Generalized Scan |
|
8 | Mar 15, 16 | Places |
|
9 | Mar 22, 23 | Data Flow Programming with CnC-HJ |
|
10 | Apr 05, 06 | Java Concurrency |
|
11 | Apr 12, 13 | CUDA |
|
12 | Apr 19, 20 | MPI |
|
...