LEC # | TOPICS | KEY DATES |
---|---|---|
1 | Matrix multiply: A case study | |
2 | Bit hacks |
Project 0 due Project 1 out |
3 | Basic performance engineering | |
4 | Computer architecture and performance engineering |
Project 1 due Project 2–1 out |
5 | Performance engineering with profiling tools | |
6 | C to assembler | |
7 | Memory systems and performance engineering |
Project 2–1 due Project 2–2 out |
8 | Cache-efficient algorithms | |
9 | Cache-efficient algorithms II |
Project 2–2 due Project 3 out |
10 | Dynamic storage allocation | |
11 | What compilers can and cannot do | |
12 | Multicore programming | Project 3 due |
13 | Parallelism and performance | Project 4–1 out |
14 | Analysis of multithreaded algorithms | |
15 | Nondeterministic programming | |
16 | Synchronizing without locks |
Project 4–1 due Project 4–2 out Project 5 out |
17 | Performance issues in parallelization | |
18 | Primer on ray tracing techniques |
Project 4–2 due Project 5 due Project 6 out |
19 |
Cache-oblivious B-tree (TokuDB) Guest lecture: Bradley Kuszmaul, MIT CSAIL | |
20 | Distributed systems | |
21 | Quiz 2 review | |
22 |
A tale of 10 bugs: Performance engineering at VMWare Guest lecture: Ravi Soundararajan, VMWare | |
23 | Final project competition and student feedback | Project 6 due |