Assume I have a physical ESX host with ONE quad-core processor and hyper-threading disabled. This means it has a total of 4 physical cores or pCPUs. I create a single VM on this VMware host. I assign this VM to have 1vCPU and put no CPU limit.
Question: If the VM is running a "cpu killer" application that keeps demanding more and more cpu cycles, could the VM end up fully consuming all the 4 underlying physical cores at any given moment in time?
I think the answer is no. A single vCPU VM can only consume at most 1 physical core worth of capacity at any given moment in time. So, in my example, since there are no other VMs running, VMware will schedule the VM to run on one physical core, When that physical core is 100% consumed, the VM's CPU utilization will latch to 100% and that's it. The other 3 cores will mostly sit idle. Correct?