April 9, 2021
11:00am - 12:00pm
Towards a User-Defined and Truly Serverless Cloud
Since the launch of Amazon Web Service in 2006, cloud computing has gone through several paradigm shifts, from a niche market that rents physical machines to the biggest IT sector that sells a variety of managed services. Most recently, serverless computing, a paradigm that promises to relieve users from the IT burden of managing servers, has quickly gained its popularity. Despite the tremendous development in cloud services, the underlying data-center infrastructure is largely the same as 15 years ago and as non-cloud environments: network-connected servers each equipped with some processor, memory, and storage. Is the server-based infrastructure the best fit for cloud computing? Going forward, what should future cloud computing look like and what data-center infrastructure it should run on? This talk will try to answer these questions by presenting my lab's past few years of efforts in building a truly serverless cloud. Such a cloud runs on a "disaggregate" data-center infrastructure, which breaks monolithic servers into network-attached hardware devices and forms resource pools by logically combining devices of the same type. Hardware resources can be allocated and scaled at fine granularity, and resource pools can be individually managed and customized for different application needs. On top of this infrastructure, the truly serverless cloud allows users to run their code with "unlimited" resources of arbitrary types and pay for only what their code uses. Specifically, this talk will cover a new OS and a new hardware platform that we built for a disaggregated data center. I will also demonstrate how "serverless" cloud services can run in and benefit from such a data center. Finally, I will briefly discuss our vision of a future "user-defined cloud", one where users define their own cloud services, by defining the hardware resource needs, system software features, and security requirements of their applications, and doing so without the need to build or manage low-level systems.
Yiying Zhang is an assistant professor in the Computer Science and Engineering Department at University of California, San Diego. Her research interests span operating systems, distributed systems, computer architecture, data-center networking, and Systems-ML. Her group builds large-scale, cross-layer real systems, often with a clean-slate approach. She won an OSDI best paper award in 2018 and an NSF CAREER award in 2019. Yiying received her Ph.D. from the Department of Computer Sciences at the University of Wisconsin-Madison under the supervision of Andrea and Remzi Arpaci-Dusseau and worked as an assistant professor at Purdue University before joining UCSD.