Given below is the tentative schedule for this course
Lecture # | Date | Topic | Reading |
---|---|---|---|
1 | Tue, Jan 14 | Introduction |
PIM: Matching in a switch dcPIM: Matching in a datacenter Optional: How to read papers |
2 | Thu, Jan 16 | Class cancelled due to 🛫 | -- |
3 | Tue, Jan 21 | Class cancelled due to ❄️ | -- |
4 | Thu, Jan 23 | Load balancing |
Valiant routing in a switch Valiant routing in Google's datacenter Optional: Original paper by Valiant |
5 | Tue, Jan 28 | Power of two choices |
Empirical blog Survey of theory Optional: Sparrow scheduler |
6 | Thu, Jan 30 | Notions of fairness I |
Chapter 2.2 (α-fairness) and 2.4 (NUM) of R. Srikant and Lei Y. (alpha fairness and NUM) |
7 | Tue, Feb 04 | Notions of fairness II |
Dominant Resource Fairness |
8 | Thu, Feb 06 | Notions of fairness III |
FairCloud (fairness is hard) |
9 | Tue, Feb 11 | Process scheduling I |
Work stealing theoretical analysis Optional: Cilk programming model Empirical analysis that concludes work stealing is best |
10 | Thu, Feb 13 | Process scheduling II |
Decades of wasted cores in Linux More bugs discovered through verification (section 5 only) Optional: Scheduler in Linux v4.6.8.1 |
11 | Tue, Feb 18 | When should we use which mathematical operation? |
Notes Optional: L1 vs L2 norms and compressed sensing |
12 | Thu, Feb 20 | Caching replacement policies I |
Tim Roughgarden's beyond worst-case lecture 3 Tim Roughgarden's beyond worst-case lecture 4 |
13 | Tue, Feb 25 | Cache replacement policies II |
Caching with delayed hits |
14 | Thu, Feb 27 | Incorporating ML in systems I |
ML improves the average. Theory bounds the worst |
15 | Tue, Mar 04 | Incorporating ML in systems II |
Traffic engineering by using ML to solve LPs faster Optional: Solving computationally hard problems with AlphaZero |
16 | Thu, Mar 06 | Incorporating ML in systems III | -- |
17 | Tue, Mar 11 | Computational complexity in practice | -- |
18 | Thu, Mar 13 | Signal processing tasting menu I | -- |
19 | Tue, Mar 25 | Signal processing tasting menu II | -- |
20 | Thu, Mar 27 | Congestion control I | -- |
21 | Tue, Apr 01 | Congestion control II | -- |
22 | Thu, Apr 03 | Guest lecture by Tegan Wilson |
Oblivious routing |
23 | Tue, Apr 08 | Performance verification I | -- |
24 | Thu, Apr 10 | Performance verification II | -- |
25 | Tue, Apr 15 | Bounding performance I | -- |
26 | Thu, Apr 17 | Abstractions that aid performance | -- |
27 | Tue, Apr 22 | Project presentations I | -- |
28 | Thu, Apr 24 | Project presentations II | -- |