Xen and the art of virtualization
SOSP '03 Proceedings of the nineteenth ACM symposium on Operating systems principles
Diagnosing performance overheads in the xen virtual machine environment
Proceedings of the 1st ACM/USENIX international conference on Virtual execution environments
Hardware support for spin management in overcommitted virtual machines
Proceedings of the 15th international conference on Parallel architectures and compilation techniques
Operating system support for virtual machines
ATEC '03 Proceedings of the annual conference on USENIX Annual Technical Conference
Xen and co.: communication-aware CPU scheduling for consolidated xen-based hosting platforms
Proceedings of the 3rd international conference on Virtual execution environments
Towards scalable multiprocessor virtual machines
VM'04 Proceedings of the 3rd conference on Virtual Machine Research And Technology Symposium - Volume 3
Comparison of the three CPU schedulers in Xen
ACM SIGMETRICS Performance Evaluation Review
Scheduling I/O in virtual machine monitors
Proceedings of the fourth ACM SIGPLAN/SIGOPS international conference on Virtual execution environments
Task-aware virtual machine scheduling for I/O performance.
Proceedings of the 2009 ACM SIGPLAN/SIGOPS international conference on Virtual execution environments
The hybrid scheduling framework for virtual machine systems
Proceedings of the 2009 ACM SIGPLAN/SIGOPS international conference on Virtual execution environments
Enforcing performance isolation across virtual machines in Xen
Proceedings of the ACM/IFIP/USENIX 2006 International Conference on Middleware
Demand-based coordinated scheduling for SMP VMs
Proceedings of the eighteenth international conference on Architectural support for programming languages and operating systems
Scheduling para-virtualized virtual machines based on events
Future Generation Computer Systems
Hi-index | 0.00 |
Virtualization enables multiple guest operating systems run on a single physical platform. These virtual machines (i.e., VM) may host any type of application, including concurrent HPC programs. Traditionally, VMM schedulers have focused on fairly sharing the processor resources among VMs, rarely consider VCPUs' behaviors. However, this can result in poor application performance to overcommitted virtual machines if there are concurrent programs hosted in them. In this paper, we review the features of both Xen's Credit and SEDF schedulers, and show how these schedulers may seriously impact the performance of the communication-intensive and I/O-intensive concurrent applications in overcommitted VMs. We discuss the origination of the problem theoretically, and confirm the derived conclusion on benchmarks. A novel approach is then proposed to improve the Credit scheduler, more adaptive for concurrent applications. Our solution includes two aspects: a periodical monitor analyzing the behaviors of each VCPU in a real-time manner, and the scheduler (extended from Credit scheduler) dynamically scaling the context switching-frequency by applying variable time slices to VCPUs according to their behaviors. The experimental results show that this extended Credit scheduler can significantly improve the performance of communication-intensive and I/O-intensive concurrent applications in overcommitted VMs, which is as good as the performance in undercommitted scenarios.