CSCI 4510/6510: Distributed Systems and Algorithms

General Information

Instructor: Stacy Patterson (sep@cs.rpi.edu)
Instructor Office Hours: T 1pm - 3pm in Lally 301

TA: Michael Zuo (zuom@rpi.edu)
TA Office Hours: T 3pm-4pm in Amos Eaton 118, W 11am - 1pm in Lally 02

Lectures: MR 12pm - 1:50pm

Course Description

This course explores the principles of distributed systems, emphasizing fundamental issues underlying the design of such systems: communication, coordination, synchronization, and fault-tolerance. We will study key algorithms and theoretical results and explore how these foundations play out in modern systems and applications like cloud computing, edge computing, and peer-to-peer systems.

Quiz Schedule

Quizzes will be held during the scheduled lecture time.

Review Problems

Homework

The coding homework will be evaluated using Submitty’s autograding feature for networked applications. Submitty uses Docker to deploy and test your application. It is not necessary for you to use Docker to test your code, but it is a good idea. Below are instructions for configuring and using Docker, as well as instructions for replicating the Submitty test environment on your own machine.

Homework 1 (due September 19, 2024)

Homework 2 (due October 16, 2024)

Homework 3 (due November 15, 2024)

Homework 4 (due December 8, 2024)

Papers and Readings

Some papers are behind a pay wall and can only be accessed from the RPI network.