This page lists all lab and homework assignments. There are also quizzes before and after each week of lecture.
Labs are due by the end of the day (11:59pm Eastern Time) unless otherwise noted.
Homeworks are due at 9:29am Eastern Time unless otherwise noted.
If an assignment is linked but tentative, there may be some changes, perhaps very substantial changes, to the assignment before it is officially released.
- Lab: getting C+Unix-like environment— on 2021-08-25
 - Lab: bomb lab— on 2021-09-01
 - HW: bomb HW— due 2021-09-08
 - Lab: bit-fiddling lab— on 2021-09-08
 - HW: bit-fiddling HW— due 2021-09-15
 - Lab: linking+ISA lab— on 2021-09-15
 - HW: linking+ISA HW— due 2021-09-22
 - Lab: HCL1 (pc)— on 2021-09-22
 - HW: HCL2 (irmovq + rrmovq + jmp)— due 2021-09-29
 - Lab: HCL3 (seqlab)— on 2021-09-29
 - HW: HCL4 (seqhw)— due 2021-10-06
 - Lab: HCL5 (pipelab1)— on 2021-10-06
 - HW: HCL6 (pipehw1)— due 2021-10-20
 - Lab: HCL7 (pipelab2)— on 2021-10-20
 - HW: HCL8 (pipehw2)— due 2021-10-27
 - Lab: CacheLab— on 2021-10-27
 - HW: pipeline tradeoff simulator— due 2021-11-03
 - Lab: cache programs (lab)— on 2021-11-03
 - HW: cache programs (hw)— due 2021-11-10
 - Lab: LoopLab— on 2021-11-10
 - HW: Rotate— due 2021-11-17
 - HW: Smooth checkpoint (no SIMD)— due 2021-11-17
 - Lab: SIMDLab— on 2021-11-17
 - HW: Smooth— due 2021-12-01
 - Lab: work on memory HW (no lab) (2021-12-01)
 - HW: Memory— due 2021-12-07