Projects and Close Readings in Software Systems:
Serverless Computing

CS 260r Spring 2019

Lectures:      MW 10:30–11:45am, Pierce 213 (Brooks Room)
Instructor:      Eddie Kohler
Office hours:      TBD

Week 1 Mon 1/29 Course introduction
Wed 1/25 From computer utility to current serverless
“The Computer Utility and the Community.” R. M. Fano. In Proc. 1967 IEEE International Convention Record.
“Serverless Computing: One Step Forward, Two Steps Back.” Joseph M. Hellerstein, Jose Faleiro, Joseph E. Gonzalez, Johann Schleier-Smith, Vikram Sreekanti, Alexey Tumanov and Chenggang Wu. In Proc. CIDR 2019.

Survey question (Google Form)! Both Fano and Hellerstein et al. discuss consequences of the computer utility for “community,” especially in Fano’s concluding section and the last paragraphs of Hellerstein et al.’s §3.2. How do you think Fano would react to Hellerstein et al.’s notion of API simplicity “chang[ing] the mindset of the developer community”?

Week 2 Mon 2/4 The Xen virtual machine monitor (presented by James Larisch)
“Xen and the art of virtualization.” Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer, Ian Pratt, and Andrew Warfield. In Proc. SOSP 2003.

Survey question (Google Form)! If Xen were part of the software management plane for a serverless computing offering, such as Amazon Lambda, which of its components would manage starting and stopping serverless functions? Outline at a high level how you think the start process would work.

Wed 2/6 Unikernels (presented by Vincent Viego)
“Unikernels: The Rise of the Virtual Library Operating System.” Anil Madhavapeddy and David J. Scott. In Comm. ACM 57(1), Jan. 2014.

Survey question (Google Form!) The Xen paper contrasts with Denali as follows: Denali “does not address the problem of supporting application multiplexing, nor multiple address spaces…each virtual machine essentially hosts a single-user single-application unprotected ‘operating system’.” Outline one important way unikernels differ from Denali-style single-user/app OSes, if there is one.

Week 3 Mon 2/11 KVM and Firecracker
“kvm: The Linux Virtual Machine Monitor.” Avi Kivity, Yaniv Kamay, Dor Laor, Uri Lublin, and Anthony Ligouri. In Proc. 2007 Ottawa Linux Symposium.
“The Firecracker Virtual Machine Monitor.” Azhar Desai. Linux Weekly News, Jan. 2019.
“Firecracker Design.” Amazon Firecracker design document.
Further information:
“KVM: The First Year.” Avi Kivity. In Proc. 2007 KVM Forum.

Survey question (Google Form!) The KVM paper we read was published soon after KVM was developed; Firecracker is a recent KVM-based technology. Name some problems the KVM developers have addressed since the KVM paper’s publication, based on the evidence of Firecracker.

Wed 2/13 Lambda show-and-tell
Week 4 Mon 2/18 Presidents’ Day holiday
Wed 2/20 Evaluating serverless systems
“Peeking Behind the Curtains of Serverless Platforms ”, Liang Wang, Mengyuan Li, Yinqian Zhang, Thomas Ristenpart, and Michael Swift, Proc. USENIX ATC 2018 (Alisha)

Survey questions (Google Form!) 1. I was very surprised that Google’s “infrastructure update in February 2018” made coldstart latencies 4x slower on average! Why might this have occurred? 2. Describe something else the authors discovered that surprised you.