Link to home
Start Free TrialLog in
Avatar of SimplyGeeky
SimplyGeekyFlag for United States of America

asked on

Can a vm with 1 vCPU use more CPU computing resources than entitled during CPU-intensive spikes?

So my boss asked a question today that I did not know the answer to offhand. I am not a certified VMWare VCP, etc so I apologize if this is a dumb question. Here goes:

Say I have a VM that is assigned 1 vCPU. Given that the cores of the pCPU are 2GHz, what would happen if the VM suddenly ran at max CPU utilization for a relatively sustained period? For instance, the VM requires 2.5GHz of processing power for 5 minutes. Is there a feature in vSphere that would allow that VM to "steal" some CPU cycles from the pool of CPU resources on the host in order to not be maxed out for those 5 minutes?

We have VMs that typically barely bump 1 vCPU, but on occasion, they may get hammered by some sustained CPU intensive process. As such we don't want to have to permanently assign 2 vCPUs to these VMs and have them sit barely above 1% for the majority of the time when they only really require those resources for short, heavy bursts. Is there a way to make this work?

Thanks,
JAK
ASKER CERTIFIED SOLUTION
Avatar of Andrew Hancock (VMware vExpert PRO / EE Fellow/British Beekeeper)
Andrew Hancock (VMware vExpert PRO / EE Fellow/British Beekeeper)
Flag of United Kingdom of Great Britain and Northern Ireland image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
First it will use cores on one socket, then add cores on next socket, and in the end hyperthreads (count all the VCPUs running in full)
Once you exceed 2 completely loaded vCPUs per core it becomes visibly slower for interactive users.
But you really need enormous amounts of RAM to get there.
2 vcpus is good minimum for any system. One archaic runaway process will not hurt your system (example: Antivirus)
Indeed dynamic CPU MHZ do exist called turbo mode...
We don't yet have them in the virtual world.....

e.g. like dynamic memory in Hyper-V!

Maybe Hot Add, but it's not automatic!
Outside VM you see more than nominal GHz per vCPU, and inside VM you can detect it with linux turbostat...