摘要

In virtualized environments, the VMM (virtual machine monitor) scheduler is critical to overall performance, as it allocates the physical resources. However, traditional schedulers have poor I/O performance of mixed workloads. Although recent research significantly improves I/O performance, they degrade the performance of computational tasks by shortening time slices and reducing cache efficiency. In order to eliminate these problems while guaranteeing I/O performance, this paper presents a multicore periodical preemption scheduling scheme with three optimization techniques: (1) periodically coalescing and handling I/O events to reduce the preemption rate and scheduling latency, which guarantees I/O performance; (2) taking advantage of multicore environments and centrally handling I/O events on different cores in a Round-Robin manner to lengthen time slices, which improves the performance of computational tasks; (3) using a dedicated priority for I/O event handling to keep the CPU fairness. We implement a Xen-based prototype and evaluate the performance of I/O workloads and computation-intensive workloads. The experimental results demonstrate that our scheduling scheme efficiently lengthens time slices and improves the performance of computational tasks, achieving the same I/O performance as the existing approaches optimized for I/O.