Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I just converted a physical Windows XP x64 machine with 4 CPUs to a VMWare virtual machine with 4CPUs (on a ESX server) using the VMWare Standalone Converter.

Everything worked just great, except that the OS now seems to use only 2 CPUs (when 4 are installed, see the following image). This must be a Windows XP issue rather than a VMWare issue, but I can not really rule out any reason at this stage.

Device Manager vs. Task Manager

What can I do?

share|improve this question
up vote 8 down vote accepted

you can also create one vCPU with 4 cores, check out:

share|improve this answer
That's a seriously good answer. – Chopper3 Oct 4 '10 at 11:22
Thanks ! The original link is here:… – Mac Oct 4 '10 at 15:13

Are you using SP2? prior to that XP wouldn't support more than two CPUs. Even with SP2 XP will only support what it sees as two CPU sockets - so your third and fourth vCPUs would need to be seen by XP as cores of one or two CPUs.

share|improve this answer
Exactly so: – Chris Thorpe Oct 4 '10 at 8:06
You are right: it seems XP supports any number of cores it, but is limited in the number of processors. My physical machine had 2 dual core processors, thus 4 CPUs were seen. – Mac Oct 4 '10 at 8:13

Don't forget that VMware guests can quite easily run more slowly with >1 vCPU, especially if the guest/core ratio is high, or the CPU load is high. For example, a CPU instruction on a dual-CPU guest has to be queued by the hypervisor until two physical cores are available. I've seen this effect in a production environment, where a P2V'd Oracle server guest, with 2 vCPUs runs more slowly than when running with 1 vCPU. Just thought I'd pop that one in there.

share|improve this answer

VMware has stated that a VM no longer is required to lock two CPUs to use the CPU if two CPUs are assigned to the VM. The Vkernal is able to assign a single CPU and give it process time until both become avaliable.

share|improve this answer
I don't suppose you have a link to that statement? – Mark Henderson Dec 4 '12 at 0:34

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.