Anyone can explain how esx server allocating the CPU resource and how VM utilizing the CPU?
See also:
http://www.yellow-bricks.com/2009/08/13/vsphere-cpu-scheduler-whitepaper-this-is-it/
http://blog.scottlowe.org/2008/06/30/vmware-esx-cpu-scheduling-information/
Andre
I am not sure ow deep you want to go but I will keep it at a high level - as a VM runs its virtual cpu is receiving instruction to run from the VMs o.s and applications - these are passed off to the vmkerner, the hypervisor in the esx server, and these instructions are scheduled to a single logical cpu (logical cpu equates to a physical core(or hyperthread if HT is enabled) on the physical cpu - it is a 1:! relationship virtual cpu to logical cpu -
Hope this helps -
If you find this or any other answer useful please consider awarding points by marking the answer correct or helpful
Hypervisor is essentially owning and scheduling slices of the underlying CPU resources as per VMs making requests for CPU. VM thinks it has full access to the physcial CPUs, but actually doesnt.
NOTE: If you are running multiple vCPUs per VM, everytime a multi-vCPU VM requests a CPU slice, the hypervisor needs to grab an underlying core/thread for all vCPUs in the VM even if it is a single threaded request.
-MattG
If you find this information useful, please award points for "correct" or "helpful".
See also:
http://www.yellow-bricks.com/2009/08/13/vsphere-cpu-scheduler-whitepaper-this-is-it/
http://blog.scottlowe.org/2008/06/30/vmware-esx-cpu-scheduling-information/
Andre