VMware Cloud Community
wesleyh20
Contributor
Contributor

ESXi 4 CPU Allocation

OK I have simple question but I am not sure exactly what the answer is:

I have a ESXi 4 host with dual quad-core CPU's and I have only 1 VM with 1 vCPU allocated on the guest. If I want this VM to use ALL of the Host's CPU when needed, do I just leave it as is with it set to unlimited, or will the fact that I only have 1vCPU allocated to the guest only allow it to use 1/8 of the hosts CPU power?

Thanks in advance!

-Wes

Tags (3)
0 Kudos
7 Replies
Rumple
Virtuoso
Virtuoso

I will only use 1 physical CPU at a time of the physical host. If you need it to use all the CPU's on the system, remove ESX and install an operating system on it and run your application.

You can assign that VM 8 vCPU's but that will defeat the purpose of putting virtualization under it (and not give you the same performance as you'd get with bare metal.)

Best practice is to give each VM a single CPU in order to maximize the number of VM's you can run in the environment, thereby bringing up the total utilization of the server to something like 50-60% (or higher) so that the money you paid for the hardware gives you the biggest return (vs sitting there idling).

0 Kudos
mittim12
Immortal
Immortal

As Rumple has stated if you give a VM a single CPU then it will only run as a single CPU. You can assign up to 8 vCPU per VM but that would require an enterprise plus license and would not be very efficent. I have included a link on the CPU scheduler used in ESX

http://www.vmware.com/files/pdf/perf-vsphere-cpu_scheduler.pdf






If you found this or any other post helpful please consider the use of the Helpful/Correct buttons to award points

0 Kudos
wesleyh20
Contributor
Contributor

Thanks All. I really appreciate it, but here is something for you. I did ramp up my vCPUs to 4 and the OS DOES see it under processors, but NOT in task manager. The question would be, if it is not seen in task manager but the are seen in devices under Processors (it shows 4), would it be able to use all of them?

0 Kudos
Rumple
Virtuoso
Virtuoso

Did you switch your hal from a uni processor to an smp hal...

0 Kudos
wesleyh20
Contributor
Contributor

I tried to change it to a multiprocessor, but this is Win Server 2003 and I am only presented with two options:

1. APCI

2. Standard PC

I looked through some forums to change it in Win 2003 Server but I found nothing concrete. Any ideas?

0 Kudos
mittim12
Immortal
Immortal

What steps did you take to try and change it? I always go to update driver, choose driver to install, and then pick the multi processor.






If you found this or any other post helpful please consider the use of the Helpful/Correct buttons to award points

0 Kudos
wesleyh20
Contributor
Contributor

Hi I did the exact same thing. Went to update driver but only TWO showed. Standard PC and the APCI (no multi or uni though) one. I tried everything, but the one thing that actually worked was upgrade my server to Server 2008 and then once booted in, I went to MSCONFIG and then the BOOT tab, advanced and told it to detect the HAL on reboot. The key that worked was to power it down after telling it to detect the HAL and CHANGING the vCPU's to something else and it forces the system to see a change. I have done this three times because I thought this was crazy, but it works every time. Win 2008 is just MUCH better! Smiley Happy

-Wes

0 Kudos