CS2640 Modern (Computer) Storage Systems
Spring 2026

Announcement

  • Jan 18, 2026: Welcome to CS2640 Modern (Computer) Storage Systems! The first class is Jan 26, 2026.
  • Feb 8, 2026: Paper discussion sign-up is now open, please choose a paper to present by Feb 11, 2026.

Overview

This course provides a comprehensive examination of both the hardware and software components of modern computer storage systems. We will delve into the layered architecture of contemporary storage systems—from individual disks and disk arrays to distributed storage systems. With a strong focus on efficiency, performance, and reliability, the course will equip you with the skills needed to evaluate, analyze, improve, and design storage systems.

Prerequisites: At least one of CS61, CS1610, CS2620
Textbook: No textbook is required. Background reading: Operating Systems: Three Easy Pieces
Class time and location: Monday and Wednesday 11:15am - 12:30pm, SEC LL2.223
Format: The first half of the course will be lecture-based, covering fundamental concepts and theories related to storage systems. The second half will focus on advanced topics and paper reading where two to three students will present each class. Students are expected to actively participate in discussions.
Grading:
  • Mid-term exam: 20%
  • Competition: 10%
  • Paper Presentation: 10%
  • Project: 50%
  • Class Participation: 10%
  • Bonus: 10%
See policy page for details.

Staff

Office hours:

Schedule

Week Date Speaker Topic Course Materials Notes
1 2026-01-26 Juncheng Yang Course overview [slides]
1 2026-01-28 Juncheng Yang Hard Disk Drive [slides] optional readings data sheet, backblaze, OSTEP, SMR, HAMR, Glass
2 2026-02-02 Juncheng Yang Solid-state Drive [slides] optional readings data sheet, OSTEP, video, design tradeoff, FEMU, contract
2 2026-02-04 Juncheng Yang SSD (cont) and Block Storage [slides 1, slides 2] optional readings Linux, LWN
3 2026-02-09 Juncheng Yang File Systems 1 [slides] optional readings OSTEP, OSTEP2, OSTEP3, vfs
3 2026-02-11 Juncheng Yang File Systems 2 [slides] optional readings OSTEP1, OSTEP2, OSTEP3, FFS, FFS Keynote, LFS, Presentation Paper Choice Due
4 2026-02-16 No class (University holiday)
4 2026-02-18 Juncheng Yang Distributed Storage Systems 1 [slides] NFS, AFS, AFS2, OSTEP-NFS, OSTEP-AFS, GFS, HDFS
5 2026-02-23 Cancell (school shutdown) Please use time to work on the project proposal.
5 2026-02-25 Juncheng Yang Distributed Storage Systems 2 [slides] 3FS, EBS, Andy S3, Alibaba EBS, Alibaba Pangu
5 2026-03-02 Juncheng Yang Storage performance
6 2026-03-04 Juncheng Yang Software cache Cache Competition Open
6 2026-03-09 Juncheng Yang Storage reliability
7 2026-03-11 Juncheng Yang Data protection and midterm review Project Proposal Due
8 2026-03-16 No class (Spring break)
8 2026-03-18 No class (Spring break)
9 2026-03-23 Midterm Exam
9 2026-03-25 Aadit Saluja, Aengus McGuinness; Eric Gong, Mariya Pershyna Storage hardware: SSD interface ZNS, SFS, optional readings LightNVM, FDP, contract Paper discussion class guidance
10 2026-03-30 Jonathan Wu, Howard Huang; Trevor DePodesta, Zani Xu File systems and I/O path Arrakis, linux, optional readings metadata, XDP, capacity-variant, cache_ext
10 2026-04-01 Yunjia Zheng, Fucheng Warren Zhu; Taj Jethwani-Keyser, Joshua Gillett Hyperscaler storage evolution: disk storage f4, Tectonic, optional readings Haystack, Tectonic-Shift Cache Competition Close
11 2026-04-06 Valentin Flunkert (Principal Applied Scientist at AWS) Guest Lecture: Data science and Machine Learning for large-scale storage systems Project Midterm Checkpoint Due
11 2026-04-08 Valerie Chen, Nicholas Yang; Spenser Sun, Cole Harten Machine Learning for Storage Learned Index, Learned Index2, optional readings Bourbon, Tracing, LRB
12 2026-04-13 Wenguang Wang (Distinguished Engineer at Broadcom VMware) Guest Lecture: Building a Production Storage System in Practice, Design, Algorithms, Code and Beyond
12 2026-04-15 Dylan Bruckner, Xuanlin Jiang; Vlad Cainamisir, Minkai Li Storage for Machine Learning: training data and input pipeline Data Stall, tf.data, optional readings tf.data service
13 2026-04-20 Yiyu Liu, Mira Yu; Milad Rezaei Hajidehi, Kitty Wang Storage for Large Language Models: KV-cache Mooncake, InfiniGen, optional readings Workload
13 2026-04-22 Waseem Ahmad Storage reliability MTTF, optional readings Failure trend, Flash, Fail Slow
14 2026-04-27 Project presentation 1
14 2026-04-29 Project presentation 2
15 2026-05-04 Project presentation 3 Project Final Report Due 2026-05-06