Title :
Virtual Cpu Scheduling Techniques for Kernel Based Virtual Machine (Kvm)
Author :
Raghavendra, K.T.
Author_Institution :
Linux Technol. Center, IBM, Bangalore, India
Abstract :
In a multi-CPU Virtual Machine(VM), virtual CPUs (VCPUs) are not guaranteed to be scheduled simultaneously. Operating System (OS) constructs, such as busy-wait (for e.g., spin locks) are written with an assumption of CPUs running concurrently on bare-metal wastes lot of CPU time. The Hardware assisted Pause Loop Exit (PLE) feature detects unnecessary busyloop constructs in guest VMs and traps to the VCPU scheduler a.k.a PLE handler to choose a best VCPU candidate to run. The existing approach (before the optimization mentioned in the paper) does a directed yield1 to a random VCPU and needs more intelligence. We also need to carefully consider the over-commit ratio2 while designing the VCPU scheduling algorithm. For e.g., trapping to the PLE handler is an overhead during under-commit cases. The existing approach lacks the over-commit ratio awareness. Hence we need effective scheduling of VCPUs to boost the performance of VMs. We present three major improvements to old VCPU scheduling technique that include choosing a better VCPU for directed yield and optimizing for under-commit cases. All these approaches have been accepted into Linux kernel. These changes potentially bring around 300-400% improvements to I/O intensive cloud VMs (large under-committed guests) and up to 25% improvement to over-committed CPU intensive VMs.
Keywords :
Linux; operating system kernels; scheduling; virtual machines; Linux kernel; VCPU scheduling algorithm; hardware assisted pause loop exit; kernel based virtual machine; multiCPU virtual machine; operating system; virtual CPU scheduling techniques; Benchmark testing; Degradation; Hardware; Kernel; Linux; Optimization; Spinning;
Conference_Titel :
Cloud Computing in Emerging Markets (CCEM), 2013 IEEE International Conference on
Conference_Location :
Bangalore
Print_ISBN :
978-1-4799-0027-5
DOI :
10.1109/CCEM.2013.6684443