TU Berlin

Communication and Operating SystemsPublications

Logo Fachgebiet KBS

Page Content

to Navigation

Publications of KBS

Partial Coscheduling of Virtual Machines Based on Memory Access Patterns
Citation key Busse:2015:PartialCoSched
Author Anselm Busse and Jan H. Schönherr and Matthias Diener and Philippe O. A. Navaux and Hans-Ulrich Heiß
Title of Book Proceedings of the 30th Annual ACM Symposium on Applied Computing
Pages 2033–2038
Year 2015
ISBN 978-1-4503-3196-8
DOI 10.1145/2695664.2695736
Location Salamanca, Spain
Address New York, NY, USA
Month apr
Editor ACM
Series SAC '15
Abstract Virtualization is omnipresent in server environments. The scheduling of virtual machines is a challenging task because it is necessary to avoid differences in processing progress of the virtual CPUs, which otherwise can lead to a severe performance degradation. Coscheduling is a commonly used technique to solve this issue. With coscheduled virtual machines, all virtual CPUs are executed at the same time by the host. However, in a situation with virtual machines of arbitrary size, coscheduling of a whole virtual machine can lead to an under-utilization of the host. This situation occurs when the sizes of the virtual machines prohibit a scheduling where all cores of the host machines are used at every point in time. In this paper, we show that this under-utilization can be reduced through partial coscheduling. Partial coscheduling uses sets that are not based on the size of the virtual machine but on the requirements of the load inside the virtual machine. We show through experiments with the Linux Kernel Virtual Machine (KVM) in combination with a coscheduling capable Linux kernel, that partial coscheduling can lead to an overall performance improvement compared to full coscheduling of complete virtual machines. The partial coscheduling approach requires knowledge about the relation between processes and threads inside the virtual machine, which is usually not available at runtime. To gather this information without modifying the guest, we propose an automatic algorithm based on the recent technique of Communication Detection through Shared Pages (SPCD), which detects the memory access behavior of applications inside virtual machines. Our experiments show that partial coscheduling can improve the utilization of the host by reducing the waste of computation time caused by unnecessarily idle cores, thereby increasing the performance of virtual machines. In many scenarios, automated partial coscheduling can also increase the host utilization.
Link to original publication Download Bibtex entry


Quick Access

Schnellnavigation zur Seite über Nummerneingabe