Scott's Weblog The weblog of an IT pro specializing in cloud computing, virtualization, and networking, all with an open source view

VMware ESX CPU Scheduling 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:

Overall, this is a ton of good content which will be very helpful to anyone seeking to solidify their knowledge of the ESX platform.

Metadata and Navigation

Be social and share this post!