VMware Cloud Community
filipzahradnik
Contributor
Contributor
Jump to solution

VM can only see 2 CPUs after P2V

I have just P2V converted Windows 2003 server into a VM on ESX 3.5, using Converter Standalone 4. The source physical box had 2 dual-core CPUs. The ESX box has 2 dual-core CPUs. The new VM has 4 CPUs configured in the VM settings.

When I boot the OS, I can only see 2 CPUs in Task Manager. However, in Device Manager I can see 4 CPUs. When I look at Performance grapgh for the VM, I can see it is only using CPUs 0 and 1. 2 and 3 are there, but idle.

Has anyone seen this?

0 Kudos
25 Replies
filipzahradnik
Contributor
Contributor
Jump to solution

I am fully aware of the performance implications of using 4 vCPUs.

As I mentioned in my previous posts, this ESX host is only running 1 VM.

0 Kudos
notorious_bdg
Enthusiast
Enthusiast
Jump to solution

0 Kudos
filipzahradnik
Contributor
Contributor
Jump to solution

Bingo! The physical box had 2 dual-core CPUs. A dual-core CPU counts as one physical CPU. That's why the physical box could see 4 cores.

ESX vCPUs are single-core, so Windows 2003 can only use 2. The only tweaking we can do is to set CPU affinity to make the 2 vCPUs use cores from both physical CPUs and maybe leave core 0 for Service Console.

Thanks!

0 Kudos
Troy_Clavell
Immortal
Immortal
Jump to solution

glad to hear you got it resolved... Small Business Server, huh? I didn't even think of that.

please consider awarding the "helpfuls" out the KjB and I if you feel the information was useful.

0 Kudos
kurtd
Enthusiast
Enthusiast
Jump to solution

That seems to be the issue I was having.  I P2V'd an SBS 2003 box that had two intel procs with hyper threading so windows saw 4 procs.  When I did the P2V, vmware converter detected 4 procs so I left it at that default.  After the P2V was done, task manager only showed two procs but device manager showed 4.  For now I just dropped the vCPU count down to two.  But I'm wondering what you meant by this:

The only tweaking we can do is to set CPU affinity to make the 2 vCPUs use cores from both physical CPUs and maybe leave core 0 for Service Console.

Where in vmware vcenter do I set cpu affinity?  Is there a way to give the VM 2 dual core vCPUs instead of 4 vCPUs?

0 Kudos
Billho201110141
Contributor
Contributor
Jump to solution

no you cannot, VM sees logical cpu as a single cpu, aka. a core, a hyperthread cpu core is count to a single vcpu

0 Kudos