On Disk I/O Scheduling in Virtual Machines
Disk I/O schedulers are an essential part of most modern operating systems, with objectives such as improving disk utilization, and achieving better application performance and performance isolation. Current scheduler designs for OSs are based heavily on assumptions made about the latency characteristics of the underlying disk technology like electromechanical disks, ash storage, etc. In virtualized environments though, with the virtual machine monitor sharing the underlying storage between multiple competing virtual machines, the disk service latency characteristics observed in the VMs turn out to be quite different from the tradition-ally assumed characteristics. This calls for a re-examination of the design of disk I/O schedulers for virtual machines.