• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1005
  • Last Modified:

VMWare, Number of processors

I have a machine with 2 sockets and 6 cores per socket

The cores are Hyperthreading enabled according to the VMWare Host

I have 2 Windows VM's.  I set them both to 1 soecket and 6 cores to fully utilize the 12 physical cores.

However, when I bring up the VM and look in the Task Mgr, and hit the Performance tab, I see 6 cores.

I expected to see 12 cores because I allocated 6 physcial cores, and each core has 2 threads, so the Task Mgr should show me 12 cores

Am I missing something

How should I diagnose
Los Angeles1
Los Angeles1
  • 3
  • 2
2 Solutions
Andrew Hancock (VMware vExpert / EE MVE^2)VMware and Virtualization ConsultantCommented:
if you want to allocate 12 vCPU in the VM, you need to allocate 12! total

and make sure your OS is licensed to support the number you allocate.
Los Angeles1Author Commented:
I get very confused on this subject

I have 2 sockets at 6 cores per socket, HT enabled

So when I allocate a VM CPU in Edit Settings, if I allocate the following

   Sockets:      1
   Processors:   6

Open in new window

Did I allocate 6 virtual cores, or 6 physical cores ?
Andrew Hancock (VMware vExpert / EE MVE^2)VMware and Virtualization ConsultantCommented:
the options are Sockets and Cores. (not processors).

1 Socket and 6 Cores is 6 vCPU in the VM.

Virtual Machines use virtual processors (vCPUs).

1 vCPUs = 1 Physical Core on the host (simplified). This is scheduled across all the Cores in the Physical Host, so this may not be the same core, all of the time.

see also here


If you want 12 vCPUs in the VM,

allocate 12 Sockets, 1 Core

or 2 Sockets, 6 Cores!

it still equals 12 vCPUs in the VM!

(it's the same it does not make any performance difference, it's just for licensing, if you have OS or Applications that are Licensed per Core)
Cloud Class® Course: Ruby Fundamentals

This course will introduce you to Ruby, as well as teach you about classes, methods, variables, data structures, loops, enumerable methods, and finishing touches.

Actually, if you have 2 sockets, and 6 cores per socket, and have hyperthreading enabled in your BIOS, you would have 24 total "logical" processors:

1CPU socket x 6cores = 6 x 2 sockets = 12 logical x 2 for Hyperthreading = 24 cores.

Keep in mind sockets is an actual physical CPU and you can think of a "core" as a logical CPU stacked on top of the physical CPU.

Hope that helps.

Los Angeles1Author Commented:
Yes, I understand that I have

   2 Sockets
   6 cores per socket

Open in new window

and I also understand that therefore I have

   24 Logical Processors

Open in new window

However, what I am having difficulty understanding is when I go to the


Open in new window

and see the following:

   Number of Virtual Sockets:   1

   Number of cores per socket:  6

   Total number of cores:       6

Open in new window

With this definition, am I using 6 Logical Processors or 12 Logical Processors
Andrew Hancock (VMware vExpert / EE MVE^2)VMware and Virtualization ConsultantCommented:
6 - Cores on the physical host.

6 vCPUs assigned to the Guest OS which uses 6 - Cores on the physical host.

which would be the same as

6 Sockets
1 Core
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Cloud Class® Course: C++ 11 Fundamentals

This course will introduce you to C++ 11 and teach you about syntax fundamentals.

  • 3
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now