There will be one homework per module. They will be posted at least two weeks before they are due. Each homework is worth 10% of your grade. The officially supported way to develop and run your homeworks is using Docker. Instructions for setting up Docker locally are here.

Module 1: Intra-Thread Parallelism

Homework specification is here

Due: April 22

Module 2: Mutexes

Homework specification is here

Due: May 6

Module 3: Concurrent Data Structures

Homework specification is here

Due: May 21

Module 4: Reasoning about Concurrency

Homework specification is here

Due: June 7

Module 5: Heterogeneous Programming

canceled