Paravirt Scheduling - Framework for Better Physical CPU Utilization
Linux Plumbers Conference via YouTube
Overview
Coursera Flash Sale
40% Off Coursera Plus for 3 Months!
Grab it
Explore a Linux kernel framework designed to optimize CPU utilization in para-virtualized environments through this 25-minute conference talk from the Linux Plumbers Conference. Learn how vCPU overcommit configurations can lead to performance degradation when multiple VMs simultaneously request CPU resources, causing expensive vCPU preemption that significantly impacts workload performance. Discover the proposed paravirt scheduling framework that enables cooperation between VMs and hypervisors to consolidate workloads on fewer vCPUs when resources become constrained. Examine the three-pronged approach involving preventing new task scheduling on paravirt CPUs, making load-balancers aware of paravirt CPUs, and pushing existing workloads away from these designated CPUs. Understand the architectural flexibility in determining which vCPUs to mark as paravirt, including experimental approaches using debugfs hints and ongoing efforts to integrate steal time values for decision-making. Engage with key discussion points covering comparison of different implementation methods, steal time integration, implementation challenges, scheduler class considerations, and userspace exploitation opportunities through tools like irqbalance and SCHED_EXT. Access accompanying resources including previous Plumbers 2024 discussions and the latest kernel patches for hands-on exploration of this performance optimization framework.
Syllabus
Paravirt Scheduling: Framework for better physical CPU utilizat... Ilya Leoshkevich, Shrikanth Hegde
Taught by
Linux Plumbers Conference