CS 294-14: Architecture of Internet Datacenters 
(RADLab Research Seminar 2.0)

Instructor: Randy H. Katz
Time: MW 2:30-4:00 PM
Place: 310 Soda
Units: 3 (2-4, but you had better sign up for 3!)

Course Description

Internet Datacenters have recently emerged as a significant new computing platform, designed to provide high capacity processing for large numbers of web clients. Major web properties like Google have designed their own building-scale computer facilities, integrating processing, storage, internal and external networking, along with integral power and cooling infrastructures. The resulting datacenters typically deploy 100,000 to 1,000,000 computers within a single facility.

In this research seminar, we will read and discuss the very recent literature on the design and implementation of processor clusters, virtual machines, virtual storage, and datacenter networking organization. Architectural approaches to deal with failures, effective sharing of processing/storage/network resources, and efficient management of power across the systems stack will be considered. Some class meetings will be dedicated to meeting with and discussing issues with industrial leaders from Google, IBM, Cisco, and Network Appliances.

Course grading will be based on classroom participation and an independent research project, which can be pursued in groups of two students. In the past, the best of such projects have resulted in publications in leading conferences.

Background in one or more of the following areas is the prerequisite: an undergraduate/senior-level course in operating systems or computer architecture or computer networking (more than one is desirable but not necessary). Willingness to take an interdisciplinary "systems" viewpoint is essential.

First year graduate students are especially encouraged to consider taking this course if they are interested in pursuing research in the general area of modern computing systems.

Course Grading

Class Participation: 40% (Presenting and discussing papers)
Guidelines for leading paper discussions are here [pdf].

Research Project: 60%

Please join the course facebook group here.

TENTATIVE Course Outline

Week 1: Course Organization, Overview, and Technology Trends
Week 2: Applications Software Infrastructure
Week 3: Processor-Cluster Organization and Power Issues
Week 4: Initial Project Proposals
Week 5: Virtual and Network Storage
Week 6: Storage Reliability and Availability Issues
Week 7: Final Project Proposals
Week 8: Networking Organization I
Week 9: Networking Organization II
Week 10: Project Mid-course Correction
Week 11: Power Issues in Servers and Storage
Week 12: Power Management
Week 13: Tracing, Monitoring, Scheduling
Week 14: Final Project Poster Session
Week 15: Lessons Learned
Week 16: Final Project Reports

Useful Materials

Last updated: 3 December 2007