...
| Day | Date (2012) | Topic | Slides | Audio (Panopto) | Code Examples | Assignment | ||||
---|---|---|---|---|---|---|---|---|---|---|---|
Module 1: Deterministic Shared-Memory Parallelism | |||||||||||
1 | Wed | Sep 05 | Lecture 1: Introduction, Async-Finish Parallel Programming, Computation Graphs, Abstract Performance Metrics, Amdahl's Law |
|
|
| HW1 (due by 11:59pm on Sep 11th) | ||||
2 | Mon | Sep 10 | Lecture 2: Data Races and Determinism, Finish Accumulators, Futures (Tasks with Return Values), Dataflow Programming, Data-Driven Tasks |
|
|
|
| ||||
3 | Wed | Sep 12 | Lecture 3: Abstract vs. Real Performance, Seq clause, Forall Loops, Loop Chunking, Barrier Synchronization, Forasync Loops |
|
|
| HW2 (due by 11:59pm on Sep 18th) | ||||
4 | Mon | Sep 17 | Lecture 4: Array ReductionReductions, Parallel QuickSort, Collective and Point-to-point Synchronization with Phasers, Forasync loops Phaser Accumulators |
|
|
|
| ||||
5 | Wed | Sep 19 | Lecture 5: Parallel MergeSort, Parallel BitonicSort |
|
| HW3 (due by 11:59pm on Sep 25th) | |||||
Mon | Sep 24 | Lecture 6: Phaser Accumulators, Bounded Phasers, Memory Consistency Models, Summary of Module 1 Module 2: Nondeterministic Shared-Memory Parallelism | |||||||||
6 | Mon | Module 2: Nondeterministic Shared-Memory Parallelism | Sep 24 | Lecture 6: Critical sections and the Isolated statement, Monitors, Atomic Variables |
|
| |||||
7 | Wed | Sep 26 | Lecture 7: Actors |
|
|
| HW4 (due by 11:59pm on Oct 2nd) | ||||
8 | Mon | Oct 01 | Lecture 8: Systolic arrays, Systolic algorithms (*Module 3 topic) |
|
|
| |||||
9 | Wed | Oct 03 | Lecture 9: Critical sections and the Isolated statement, Monitors, Atomic Variables, Linearizability of Concurrent Objects, Safety and Liveness Properties |
|
| HW5 (due by 11:59pm on Oct 9th) | 10 | Mon | Oct 08 | Lecture 10: Linearizability of Concurrent Objects (contd), Safety and Liveness Properties, Summary of Module 2 | |
| Module 3: Distributed-Memory Parallelism | ||||||||||
1110 | WedMon | Oct 1008 | Lecture 1110: Task Affinity with Places, Message Passing Interface (MPI) |
|
| HW6 (due by | |||||
11 | :59pm on Oct 16h)12 | Mon | Oct 15 | Wed | Oct 10 | Lecture 11: MPI (contd), Cloud Computing and Lecture 12: Cloud Computing, MapReduce, GPU Programming, Summary of Module 3 |
|
| HW6 (due by 11:59pm on Oct 16h) | ||
Module 4: Real-world Parallel Programming Models and Challenges | |||||||||||
12 | Mon | Oct 15 | Lecture 12: Parallel Programming Patterns, Comparison of Parallel Programming Models |
|
|
| |||||
13 | Wed | Oct 17 | Lecture 13: Real-World Parallel Programming Memory Consistency Models, Course Review |
|
| Take-home Final Exam (3-hour duration, due by 5pm on Oct 19th) |