VMware ESX CPU Scheduling Information30 June 2008 · Filed in Information
The VMware peformance team blog (found here) published an entry last week on ESX scheduler support for multiprocessor VMs. The blog entry itself was quite informative; in particular, the information about ESX 3.x’s “relaxed co-scheduling” mechanism was very useful.
Long-time users of ESX will recall that mixing uniprocessor (UP) and multiprocessor (MP) workloads on an ESX server was very strongly discouraged, especially in systems with a lower number of cores. This was due to the “strict co-scheduling” mechanism used in ESX 2.x. The “relaxed co-scheduling” mechanism introduced in ESX 3.x that allows for far greater flexiblity in scheduling UP and MP VMs. To quote the blog entry:
Relaxed co-scheduling significantly reduces the possibility of co-scheduling fragmentation, improving overall processor utilization.
I was not aware that the vCPU scheduling mechanisms had changed between 2.x and 3.x, so this is good news.
However, the real treasure in this blog entry—for me, anyway—was the link to the in-depth performance documents being posted in the Performance Community Forum. Here are some very detailed documents that provide outstanding information on topics like:
how ESX co-schedules SMP VMs (more detailed than the blog entry)
Overall, this is a ton of good content which will be very helpful to anyone seeking to solidify their knowledge of the ESX platform.Tags: ESX · VMware · Virtualization Previous Post: Hyper-V Storage Scenarios Next Post: Citrix, Hyper-V, and the Future of XenServer