Host: Abhishek Bhattacharjee
Coffee available at 3:45
Title: Scalable Synchronization Mechanisms for Many-core Operating Systems
With the increasing demand for big data processing, we have seen tremendous growth in the adoption and commoditization of many-core machines that span beyond hundreds of hardware threads over the past decade. Even cloud providers are offering such large machines to allow users to process data as quickly as possible. To efficiently utilize such resources, developers rely on various synchronization mechanisms as essential building blocks for designing high-performance many-core applications.
In this talk, I will focus on designing new synchronization mechanisms for highly concurrent software: the operating system. First, I will show that existing locking primitives are a big deterrent to the scalability of the operating system. Then, I will present a new methodology to build scalable and practical locking algorithms that break the decade-old convention of coupling lock’s hardware/software policies and implementation. The family of locks I propose, not only have the least memory footprint but also the highest throughput for any thread count. Second, I will present another scalability problem that occurs in existing timestamp-based algorithms, such as concurrency control mechanisms and concurrent data structure frameworks. I will address this issue with a scalable timestamping primitive by providing an illusion of a global clock, thereby making such algorithms many-core friendly. Finally, I will end the talk with my vision for building evolving services for operating systems to incorporate the fast-changing hardware as well as software.
Sanidhya Kashyap is a Ph.D. candidate in the School of Computer Science at Georgia Tech, advised by Taesoo Kim at Georgia Tech and Changwoo Min at Virginia Tech. His research interests are broadly in the area of systems with a focus on designing scalable and robust systems software. His thesis focuses on revisiting the design of synchronization primitives and their impact across software stack. His works have won two best paper awards and found more than 250 bugs in the Linux file systems.