Most lectures have reading associated with them, which we recommend completing before lecture. The textbook for this course is the third edition of The Datacenter as a Computer, by Luiz André Barroso, Urs Hölzle, and Parthasarathy Ranganathan ("DC" below). We will supplement readings from this textbook with readings from Hardware and Software Support for Virtualization ("HSSV" below), Operating Systems: Principles and Practice ("OSPP" below), and other books and papers. Optional readings are indicated by "opt".
All readings are accessible online from the UCSD network. To access the readings off campus, you can use the campus VPN.
In this quarter we will cover data center applications, virtualization, containers, queueing and scheduling, memory and storage technologies, reliability, orchestration, data center networks and congestion control, hardware accelerators, security, energy efficiency, and carbon emissions. The schedule for later weeks will be posted as we progress through the quarter.
| Date |
Topic |
Readings |
Due |
| Mon 1/6 |
Introduction |
DC, chapter 1 |
|
| Tue 1/7 |
Lab 0 |
|
|
| Wed 1/8 |
Execution Environment |
DC, chapter 2.4 |
|
| Fri 1/10 |
Virtual Machines: Virtualization Approaches |
HSSV, chapter 1, opt: 3.2, 3.3 |
A Tour of Go |
| Mon 1/13 |
Virtual Machines: Memory |
HSSV, chapters 3.2.5, 5 (can skip 5.2) |
|
| Tue 1/14 |
Lab 1 |
|
Group sign-up form |
| Wed 1/15 |
Virtual Machines: I/O |
HSSV, chapter 6-6.2.2 |
|
| Fri 1/17 |
Containers and Virtual Networks |
opt: Container-based Operating System Virtualization |
#FinAid survey |
| Mon 1/20 |
no class - Martin Luther King, Jr. Holiday |
|
|
| Tue 1/21 |
extra office hours |
|
|
| Wed 1/22 |
Queueing Theory |
OSPP, chapter 7.5 |
|
| Fri 1/24 |
Queueing and Scheduling |
opt: Shenango |
|
| Mon 1/27 |
Server CPUs and Memory |
DC, chapter 3.1 |
|
| Tue 1/28 |
Lab 2 |
opt: Open Versus Closed: A Cautionary Tale |
Lab 1 |
| Wed 1/29 |
Memory Consistency and Cache Coherence |
A Primer on Memory Consistency and Cache Coherence, chapters 1-1.2, 2, and 3-3.4 |
|
| Fri 1/31 |
Tiered Memory Systems |
opt: TPP |
|
| Mon 2/3 |
SSDs |
opt: Don’t Be a Blockhead |
|
| Tue 2/4 |
Design Assignment 1 |
The Cost of a Cloud, a Trillion Dollar Paradox |
HW 1 |
| Wed 2/5 |
HDDs and Caching |
DC, chapter 3.4, opt: Scaling Memcache at Facebook |
|
| Fri 2/7 |
Reliability |
DC, chapter 7 |
Design Assignment 1 |
| Mon 2/10 |
Orchestration |
Borg, Omega, and Kubernetes |
|
| Tue 2/11 |
Lab 3 |
|
Lab 2 |
| Wed 2/12 |
Networking |
DC, chapter 3.3 |
|
| Fri 2/14 |
Network Topology |
opt: Jupiter Rising |
|
| Mon 2/17 |
no class - Presidents' Day Holiday |
|
|
| Tue 2/18 |
no discussion |
|
Lab 4 Proposal |
| Wed 2/19 |
Datacenter Congestion Control |
DCTCP, section 2 |
|
| Fri 2/21 |
Datacenter Congestion Control |
opt: Swift |
|
| Mon 2/24 |
Software-Defined Networking |
opt: The Road to SDN |
|
| Tue 2/25 |
no discussion |
|
Lab 3 |
| Wed 2/26 |
Hardware Acceleration |
DC, chapter 3.2, opt: Azure Accelerated Networking |
|
| Fri 2/28 |
Hardware Acceleration: GPUs and TPUs |
video: A Decade of Machine Learning Accelerators |
|
| Mon 3/3 |
Power, Cooling, and Energy Efficiency |
DC, chapter 4.1, 5.1-5.4 |
|
| Tue 3/4 |
Design Assignment 2 |
DC, chapter 3.5 |
HW 2 |
| Wed 3/5 |
Carbon Emissions |
opt: Myths and Misconceptions |
|
| Fri 3/7 |
Confidential VMs |
opt: Shielding Applications from an Untrusted Cloud with Haven |
Design Assignment 2 |
| Mon 3/10 |
Machine Learning: Parallelism Strategies |
opt: Parameter Server |
|
| Tue 3/11 |
no discussion |
|
|
| Wed 3/12 |
canceled |
|
|
| Fri 3/14 |
Machine Learning: Parallelism Strategies and Networks |
opt: PipeDream |
Lab 4 (3/15) |