I have been using VMware 3.5 Infrastructure for about a year. I have a virtual machine that is running an accounting program that is very cpu intensive. I have been getting cpu alerts from this VM and am looking at the best way to apporach it.
The ESX (HP Proliant DL160 G5) that the VM is running on has more than enough CPU power (2 physical, 8 logical processors) as the usage never goes above 20% and the 3 other machines never approach the warning threshold.
My assumption was that the ESX would automatically divert CPU resources to the problem VM when the warning levels were tripped, but this is not happening. I called VM support and was told that I should find out which VMs are assigned to which logical processors and then set the CPU affinity of the problem VM to a free logical processor.
I also looked into whether hyperthreading may be an answer but it turns out that hyperthreading is "not required" on the G5 models: (http://h20000.www2.hp.com/bizsupport/TechSupport/Document.jsp?lang=en&cc=us&taskId=115&prodSeriesId=3580694&prodTypeId=15351&objectID=c00793902
My question is, shouldn't the ESX server automatically adjust free CPU resources to a CPU intensive machine? CPU affinity semes to have some drawbacks so I wanted to get some advice.