CS 651

« back

The following lecture schedule is tentative and might be updated during the semester. We will be keeping you informed of any changes via Piazza. You may also want to take a look at the Official Semester Dates.

MSAT refers to the textbook Distributed Systems, 4th Edition by Maarten van Steen and Andrew S. Tanenbaum.

Date Topic Assigned Reading Programming Assignment
9/3 L1: Course Overview -  
9/5   Futures and Promises HW1: Futures
9/8 L2: Computation and Communication Primitives (threads; RPCs) MSAT Ch. 3.1, 4.1, 4.2  
9/10 L3: Concurrency and Parallelism The Go Programming Language and Environment  
9/15 L4: Data-parallel computation MapReduce HW2: MapReduce
9/17 L5: Fault Tolerance (primary-backup replication; checkpointing; write-ahead logging) GFS  
9/22 L6: Data Consistency (strong vs weak consistency; linearizability) Zookeeper  
9/24 L7: State Machine Replication I (distributed consensus; leader election) OmniPaxos (Sec. 1-3, 5)  
9/29 L8: State Machine Replication II (log replication; persistence; reconfiguration) OmniPaxos (Sec. 4, 6) HW3: OmniPaxos A
10/1 L9: Geo-replicated Systems PNUTS  
10/6 L10: Publish-Subscribe (asynchronous, reliable, event-driven communication) The Many Faces of Publish/Subscribe  
10/8 L11: Distributed Shared Memory (write amplification; false sharing; causal consistency) TreadMarks  
10/13     HW4: OmniPaxos B
10/14 Hacking Day (No lecture) -  
10/15 Review: Lectures 1-12 / Practice Exam -  
10/20 L12: Guest Lecture by Prof. Romaric Duvignau (Chalmers): DHTs and Trackerless BitTorrent Chord  
10/22 L13: Eventual Consistency (conflict resolution; gossip protocols) Dynamo  
10/27 Midterm (during lecture) Lectures 1-11  
10/29 L14: Distributed Transactions I (serializability; snapshot isolation) Spanner  
11/3 L15: Distributed Transactions II (atomicity; two-phase commit) - HW5: PubSub A
11/5 L16: Distributed Transactions III (optimistic concurrency control) FaRM  
11/10 L17: Cluster Computing (dataflow model) Spark  
11/12 L18: Cluster Management (resource consolidation; job scheduling) Borg  
11/17 L19: Distributed Tracing (microservices) Pivot Tracing HW6: PubSub B
11/19 L20: Distributed Training (ML) TBD  
11/24 L21: Serverless Computing Cloud Programming Simplified  
12/1 L22: Decentralized Trust Conclave  
12/3 L23: Bitcoin Bitcoin  
12/8 L24: Research Topics in Distributed Systems -  
12/10 Review: Lectures 13-24 / Practice Exam -