针对多核平台的虚拟化环境中客户机与虚拟机管理器(virtual machine monitor,VMM)之间语义缝隙造成客户机I/O性能下降的问题,提出了一种基于I/O受限进程识别的虚拟处理器(virtual CPU,vCPU)调度机制。该机制在客户机内部利用推断技术识别I/O受限进程,通过客户机与VMM的协作实现I/O事件与I/O受限进程的关联,利用保证客户机之间公平性的虚拟对称多核处理器(virtual symmetric multi-core processor,vSMP)Internal调度算法,优先调度与I/O事件关联的I/O受限进程所在的vCPU来桥接客户机与VMM之间的语义缝隙,提高拥有vSMP的客户机中I/O负载性能。测试结果表明,相比于KVM虚拟化环境的CFS调度机制,该机制可以在保证客户机CPU公平性的前提下,有效提升运行混合负载的vSMP客户机中I/O负载性能,同时只增加较小的客户机额外开销,可以应用在负载多样性和不可预测性的虚拟桌面和云计算环境中。
A novel I/O-aware virtual CPU(vCPU)scheduling mechanism in virtualized environments based on multi-core platform is proposed to eliminate the semantic gap between guest and virtual machine monitor(VMM)that dramatically degrades the performance of I/Obound workloads in virtual symmetric multi-core processor(vSMP)virtual machine(VM).Inference techniques are used to identify the I/O-bound tasks,and the I/O-bound tasks and I/O events are correlated through the coordination between the guest operating system and VMM.Then the correlation information is used to bridge the semantic gap by a vSMP Internal algorithm so that a vCPU with I/O-bound task can selectively be scheduled to handle its incoming events promptly with ensured fairness among VMs.Extensive evaluations and comparisons with the CFS scheduler used by the KVM virtual machine monitor show that the proposed mechanism significantly improves I/O performance of vSMP VMs with ensured CPU fairness,and little overhead is introduced to guest.Therefore,the proposed mechanism is widely applicable in suchenvironments with unpredictable and varying workloads as virtual desktop and cloud computing.