I've read a bit around this subject but would benefit from a bit of help from people who really know this stuff because I'm a bit confused.
I was on an ESX3.x course and the instructor mentioned something about it not being a good idea to over resource VMs with vCPUs due to scheduling gotachas. Reading around the subject the strict co-scheduling that ESX .2x used would definitely have created problems with some VMs using multiple vCPUs under certain conditions but I've read that the co-scheduler is relaxed and this means that this problem is a bit less apparent.
We are running an ESX 3.0 server with 3 VMs and 4 vCPUs. One VM is has 1 vCPU assigned, 1 has 2 and the other has 4. I suspect the VM with 4vCPUs is having major performance issues (effectively, it's wanting to use all available vCPUs which is probably bound to cause scheduling issues) but I'm unsure how to troubleshoot CPU scheduling issues.
How strict is cosheduling in ESX 3 and what's the best way to troubleshoot vCPU scheduling issues?
Cheers,
Tim