Slides will be uploaded the day after class

Unless explicitly mentioned, Readings will refer to The Art of Multiprocessor Programming, available online from the library

Module 1: Introduction, Background and ILP

Date Topic Slides Readings
Mon, Jan. 3 Welcome! slides Overview page
Wed, Jan. 5 Arch and Compiler Background 1 slides Appendix B
Fri, Jan. 7 Arch and Compiler Background 2 slides Appendix B
Mon, Jan. 10 Instruction Level Parallelism 1 slides Class slides
Wed, Jan. 12 Instruction Level Parallelism 2 and C++ threads slides Class Slides

Module 2: Mutual Exclusion

Date Topic Slides Readings
Fri, Jan. 14 Principles of Mutual Exclusion 1 slides Chapter 2
Wed, Jan. 19 Principles of Mutual Exclusion 2 slides Chapter 2
Fri, Jan. 21 Mutual Exclusion in Practice 1 slides Chapter 7 - 7.5
Mon, Jan. 24 Mutual Exclusion in Practice 2 slides Chapter 7.5 - end
Wed, Jan. 26 Specialized Mutual Exclusion 1 slides Chapter 8
Fri, Jan. 28 Specialized Mutual Exclusion 1 slides Chapter 8

Module 3: Concurrent Data Structures

Date Topic Slides Readings
Mon, Jan. 31 Principles of Concurrent Objects I slides Chapter 3
Wed, Feb. 2 Principles of Concurrent Objects II slides Chapter 3
Fri, Feb. 4 Specialized Queues slides Class slides
Mon, Feb. 7 Work Stealing slides Chapter 10
Wed, Feb. 9 Work Stealing 2 slides Class Slides
Fri, Feb. 11 Concurrent Sets slides Class Slides
Mon, Feb. 14 Concurrent Sets 2 slides Class Slides

Module 4: Reasoning about Concurrency

Date Topic Slides Readings
Wed, Feb. 16 Barriers slides Chapter 17
Fri, Feb. 18 Memory Consistency Models 1 slides You Don’t Know Jack…
Wed, Feb. 23 Memory Consistency Models 2 slides You Don’t Know Jack…
Fri, Feb. 25 Forward progress 1 slides Class Slides
Mon, Feb. 28 Forward progress 2 slides Class Slides

Module 5: Heterogeneous Computing

Date Topic Slides Readings
Wed, March 2 Intro to GPUs and Javascript slides Class Slides
Fri, March 4 Javascript parallelism 1 slides Class Slides
Mon, March 7 GPU Programming 1 slides CUDA By Example Chapter 1
Wed, March 9 GPU Programming 2 slides CUDA By Example Chapter 3-4
Fri, March 11 Web GPU as it applies to Homework 5 slides Class slides

Final

Our final is scheduled for Thursday, March 17. If you would like to block off specific hours, our scheduled time is 4 PM to 7 PM