CS 675 Distributed Systems (Spring 2020)

Course Schedule

The course schedule is tentative and subject to change. You can find our reading list here.

DateTopic Required reading/assignmentOptional reading
Jan 22 Lec 1: Introduction [slides],
Go systems programming [slides] [slides+notes]
[syntax]
[go_systems_programming]
[precept1 solutions]
Lab 0 out
Jan 29 Lec 2: Remote procedure call, RPCs in Go [slides] [slides+notes] [wc client+server]
Lab 0 due midnight Friday 01/31
Lab 1 out
Feb 5 Lec 3: MapReduce, concurrency in Go [slides] [slides+notes] MapReduce Google File System
Fun read: The friendship that made Google huge
Feb 12 Lec 4: Time & clocks, primary-backup [pdf] [pptx] [pdf+notes] Lab 1 due midnight Friday 02/14
Lab 2 out
Feb 19 Lec 5: Distributed consensus [slides] [slides+notes],
Paxos [slides] [slides+notes],
Raft [slides]
Paxos made simple,
Raft
Paxos made live,
Chubby,
Zookeeper
Feb 26 Traveling to FAST (NO CLASS)
Midterm review [slides]
...and also, Hack Day!
Project ideas released: Pick your project
Mar 4 Midterm exam Lab 2 due midnight Wednesday 03/04
Mar 11 Spring Recess (NO CLASS)
Mar 18 Extended Spring Recess (NO CLASS)
Mar 25 Lec 6: Raft [slides] [slides+notes],
Spark [pdf] [pptx] [pdf+notes]
Spark RAMCloud,
Dryad
Apr 1 Lec 7: Serverless computing I (background & trends) [slides] [slides+notes] Project proposal due Wednesday 04/01 Friday 04/03
Berkeley's view of serverless computing
Firecracker, OpenLambda
Apr 8 Lec 8: Serverless computing II (applications) [infinicache_slides] [wukong_slides] InfiniCache,
Wukong
PyWren (numpywren), ExCamera
Apr 15 Lec 9: Amazon Dynamo [slides] [slides+notes],
Amazon Dynamo,
Google's Bigtable,
Chord P2P
Apr 22 Lec 10: Facebook memcache [slides] [slides+notes] Facebook memcache,
Workload analysis of Facebook's memcache
Apr 29 Lec 11: Ray RL framework [pdf] [pptx (w/ animation)] [pdf+notes] [pptx+notes] [Ray API examples] Ray Parameter Server,
MXNet,
TensorFlow,
Applied ML at Facebook (video)
May 6 Lec 12: Course summary [slides] [slides+notes] [review whiteboard notes]
May 13 Project presentation Final project report and src due Friday 05/15