Anything on the schedule more than 24 hours in advance is subject to change.

Week Day Description Readings Slides Due
1 8/24 What is a memory model?   PPT, PDF  
1 8/26 hardware MMs, intro Russ Cox’s blog PPT, PDF  
2 8/31 hardware MMs, operational      
2 9/2 operational MMs: TSO   rules HW1 due 9/4
3 9/7 Labor Day, no class      
3 9/9 operational MMs: PSO      
4 9/14 operational MMs: SRA      
4 9/16 operational MMs: SRA, continued      
5 9/21 axiomatic MMs: SC   rules  
5 9/23 axiomatic MMs: RA release-acquire   HW2 due 9/25
6 9/28 axiomatic MMs: RA, continued      
6 9/30 axiomatic MMs: TSO      
7 10/5 hardware MMs, testing x86-TSO, diy, litmus paper    
7 10/7 hardware MMs, checking diy, herd paper, herd docs   HW3 due 10/9
8 10/12 language MMs, intro Russ Cox’s blog, DRF-SC    
8 10/14 language MMs, SC-DRF      
9 10/19 language MMs, atomics rules    
9 10/21 language MMs, RA and RLX C++ concurrency, CppMem   project proposal due 10/23
10 10/26 language MMs, implementing compiling C11, ARM compilation scheme    
10 10/28 compilation schemes     HW4 due 10/30
11 11/2 language MMs, fixing C11 fix 1, C11 fix 2    
11 11/4 more C11 fixes      
12 11/9 C11 fixes, continued      
12 11/11 program logics     project check-in due 11/12
13 11/16 weak-memory logics iGPS    
13 11/18 weak-memory logics, continued     HW5 due 11/20
14 11/23 TBD      
14 11/25 Thanksgiving, no class      
15 11/31 TBD      
15 12/2 review/the big picture     final project due 12/4