Date | Topic | EdX_Lecture | Assignments | Reading | Suggested Readings |
---|---|---|---|---|---|
Mon 08/21 | Background and Motivation Introduction | [lecture] |
|
|
|
Wed 08/23 | Background and Motivation Scalability and Correctness | [lecture] |
|
||
Mon 08/28 | Background and Motivation Processes and Threads | [lecture] |
Chapter 1 |
Understanding the Linux Kernel (3rd Edition) Chapter 9, Process Address Space (skim) |
|
Wed 08/30 | Background and Motivation Synchronization and Cache Coherence | [lecture] |
Chapter 6 (pp. 143-187) |
||
Mon 09/04 | Labor Day |
|
|
||
Wed 09/06 | Background and Motivation Monitors and Barriers | [lecture] |
Chapter 3, 11 |
Experiences with Processes and Monitors in Mesa (Lampson and Redell, Communications of the ACM 23, 2, 1980) |
|
Mon 09/11 | Background and Motivation Events and Futures | [lecture] |
Futures and Promises dist-prog-book chapter 2 |
The Orc Programming Language (pp. 1-25) |
|
Wed 09/13 | Parallel Architectures Parallel Architecture | [lecture] |
|
||
Mon 09/18 | Parallel Architectures Parallel Algorithms | [lecture] |
|
||
Wed 09/20 | Parallel Architectures CUDA: Part I | [lecture] | |||
Mon 09/25 | Parallel Architectures CUDA: Part II | [lecture] |
|
||
Wed 09/27 | Parallel Architectures GPU Optimization | [lecture] |
|
||
Mon 10/02 | Programming Models Go Programming | [lecture] |
|
||
Wed 10/04 | Programming Models Cilk: Parallel Runtimes | [lecture] |
|
||
Mon 10/09 | Programming Models Transactions | [lecture] |
Ordering concurrent events and transactions in Principles of Transaction Processing book |
Transaction Processing: Concepts and Techniques (Jim Gray and Andreas Reuter 1993) 1.1 - 1.2.5 |
|
Wed 10/11 | Foundations and Perspectives Success stories | [lecture] |
|
|
|
Mon 10/16 | Foundations and Perspectives Lessons from Computer Architecture | [lecture] |
|
|
|
Wed 10/18 | Foundations and Perspectives Understanding Speedup | [lecture] |
|
|
|
Mon 10/23 | Foundations and Perspectives Reasoning about Performance | [lecture] |
|
|
|
Wed 10/25 | Foundations and Perspectives Programming Tips | [lecture] |
|
|
|
Mon 10/30 | Shared Memory Lock Freedom | [lecture] |
Lock-Freedom |
|
|
Wed 11/01 | Shared Memory Transactional Memory | [lecture] |
Chapter 10 (pp 291-295) |
The "Double-Checked Locking is Broken" Declaration (Bacon, Bloch, Bogda, Click, Haahr, Lea, May, Maessen, Mitchell, Nilsen, Pugh, Sirer, 2004) |
|
Mon 11/06 | Shared Memory Race Detection | [lecture] |
|
||
Wed 11/08 | Shared Memory Rust | [lecture] |
|
||
Mon 11/13 | Parallelism at Scale MPI | [lecture] |
Chapter 7 (pp. 202-229) |
||
Wed 11/15 | Parallelism at Scale Dataflow Engines | [lecture] | |||
Fri 11/17 | Parallel Performance Two Parallel Algorithms | [lecture] |
|
|
|
Mon 11/20 | Fall Break |
|
|
||
Wed 11/22 | Fall Break |
|
|
||
Mon 11/27 | Parallel Performance Parallel Memory Management | [lecture] |
|
|
|
Wed 11/29 | Correctness at Scale |
CAP, Consistency, and CRDTs |
|
||
Mon 12/04 | Auto-parallelization |
1) Dandelion: a Compiler and Runtime for Heterogeneous Systems |
Last updated: 2023-08-19 09:14:41 -0500 [validate xhtml]