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 |
6 | Thu, Jan 30 | Notions of fairness I | -- |
7 | Tue, Feb 04 | Notions of fairness II | -- |
8 | Thu, Feb 06 | Notions of fairness III | -- |
9 | Tue, Feb 11 | Process scheduling I |
Work stealing theoretical analysis Cilk programming model Empirical analysis that concludes work stealing is best |
10 | Thu, Feb 13 | Process scheduling II |
Decades of wasted cores in Linux Optional: Scheduler in Linux v4.6.8.1 More bugs discovered through verification |
11 | Tue, Feb 18 | Caching replacement policies I | -- |
12 | Thu, Feb 20 | Cache replacement policies II | -- |
13 | Tue, Feb 25 | Incorporating ML in systems I | -- |
14 | Thu, Feb 27 | Incorporating ML in systems II | -- |
15 | Tue, Mar 04 | Incorporating ML in systems III | -- |
16 | Thu, Mar 06 | Computational complexity in practice I | -- |
17 | Tue, Mar 11 | Computational complexity in practice II | -- |
18 | Thu, Mar 13 | Computational complexity in practice III | -- |
19 | Tue, Mar 25 | Congestion control I | -- |
20 | Thu, Mar 27 | Congestion control II | -- |
21 | Tue, Apr 01 | Congestion control III | -- |
22 | Thu, Apr 03 | Performance verification I | -- |
23 | Tue, Apr 08 | Performance verification II | -- |
24 | Thu, Apr 10 | Bounding performance I | -- |
25 | Tue, Apr 15 | Abstractions that aid performance I | -- |
26 | Thu, Apr 17 | Abstractions that aid performance II | -- |
27 | Tue, Apr 22 | Project presentations I | -- |
28 | Thu, Apr 24 | Project presentations II | -- |