Friday, November 16, 2012

vSphere Host vs. VM CPU Mapping

From time to time I still get asked about the mapping between CPU's on the ESXi host and Virtual Machines it hosts (this usually stems from discussion around application licensing - more recently around Tibco) . Here is a good definition on how this works, which will hopefully provide some clarification:



If you do not have Hyper-Threading (HT) enabled it (ESXi) maps the vCPU to a logical processor which is a core, if you have it enabled it will map to a logical processor which comes from HT. But HT itself is not equal to real core, it is just a kind of an additional scheduler instance so the OS (ESXi) scheduler can drop its work there and continue without waiting for the work to be scheduled to the real core. E.g. if memory access is requested, the OS has to wait for that to be finished by the real core if HT is not available. With HT it can continue to schedule new jobs to the next instance without waiting. 

if you have any suggestions or adjustments for this, please feel free to comment!

No comments:

Post a Comment