The use of virtualization is progressively accommodating diverse and unpredictable workloads as it is being adopted in virtual desktop environments. One benefit of virtualization in these environments is the ability to multiplex several operating systems on a single physical host. Xen is an open source VMM which is widely used in commercial as well as the research community. An important requirement of virtualization is performance isolation. The Xen credit scheduler currently does not account for the amount of work delegated by a particular VM to the Isolated Driver Domain (IDD). Thus, the behavior of one VM can negatively impact resources available to other VMs, even if the per-VM resource limits are enforced. Also, virtual machine scheduling has a critical impact on I/O performance. The VMM is totally agnostic of the internal workloads of the virtual machines; hence it has difficulty in considering mixed workloads. Such semantic gap can degrade the I/O responsiveness when the workloads are diverse.
In this project, we plan to develop a non-intrusive mechanism which accurately measures the per-VM resource utilization, including the amount of work delegated to the driver domain. We also plan to introduce strong inference and correlation mechanisms to track the internal tasks of the VMs. We focus on improving the I/O responsiveness in VMs with mixed workload environment and guarantee complete CPU fairness among virtual machines. All the implementation is confined to the virtualization layer based on the Xen VMM and the credit scheduler.