VMware Communities
4techniques
Contributor
Contributor

What would you do? Assign number of processors and cores

Thanks all, first time poster and new to this.  I purchased Workstation Pro.  I have a Windows 11 Pro desktop.  My processor has 16 Cores and 24 Logical processors.  I purchased another license for Windows 11 Home.  The VM that I want to set up will mostly be used for surfing the Internet.  It will have a third-party anti-virus installed and probably a couple of other security programs.

If this was you, what Number of processors and Number of cores per processor would you assign to the VM that you would create?

Thank you very much, 4techniques

0 Kudos
5 Replies
bluefirestorm
Champion
Champion

Windows Home can only recognise 1 CPU socket (whether physical or virtual). Windows Professional can recognise up to 2 sockets. So that answers the "Number of processors" for a Windows Home VM can only be 1.

There is no difference in performance in assigning a single virtual socket or dual virtual socket. The number of vCPUs you want to assign depends on the workload on the VM and as well as the host. Probably start with 2 and adjust as needed.

You might find problem that VMs are using only the e-cores and results in slow VMs.

The workaround(s) are

(1) setting the host OS Power Plan to "High Performance" or
(2) disable power throttling on vmware-vmx.exe or
(3) set CPU affinity to only the p-cores

4techniques
Contributor
Contributor

Interesting, bluefirestorm, thank you.  When setting up the Win11 Home virtual machine, VMWare Workstation gave me the default of Number of Processors=2, Number of Cores per Processor=1, Total Processor Cores=2.

I found an interesting article on the Internet, you probably already know all this.  It told me to use Task Manger in the Virtual Machine to see what was actually being used.  With the above default settings, I was getting Sockets=1, Virtual Processors=1.  The article mentioned changing the settings to Number of Processors=2, Number of Cores per Processor=4, Total Processor Cores=8.  I made the changes then again checked Task manger.  I was now getting Sockets=1, Virtual Processors=4.

So you are correct, Win11 Home can only be 1 Processor.  I do not know if the change of Total Processor Cores in my case from 1 to 4 has made any difference yet, I need to use it more.

Thanks again for the info, 4techniques.

 

0 Kudos
Technogeezer
Immortal
Immortal

Another thought:

As a rule of thumb, the total number of cores you assign to al running virtual machines (noted by the Total Processor Cores display you're seeing) should not be greater than the number of physical cores (not logical processors) minus 2. you have in the machine. Your processor has 16 cores, not 24, so virtual machines should not consume more than 14 processor cores. You need to leave some resource for the host to run things on behalf of your virtual machine and other running processes. 

You are correct that Windows 11 Home only supports 1 processor socket. So any Win 11 Home VM should be set as "Number of processors=1" and the number of cores per processor set to the number of virtual cores you want the VM to run.

I would think that assigning more than 1 processor core to a Windows 11 VM would make a difference - as the minimum that Microsoft recommends for Windows 11 is 2 cores.  

- Paul (Technogeezer)
Editor of the Unofficial Fusion Companion Guides
4techniques
Contributor
Contributor

Thank you, technogeezer.  Upon doing some more research, I found this at vmware which recommends between 1-4 cores depending upon what you are using the VM for:

https://docs.vmware.com/en/VMware-Workstation-Pro/17/com.vmware.ws.using.doc/GUID-9745D560-9243-4262...

Then I found this website that states assigning too many cores to the VM can actually be detrimental to performance:

https://theithollow.com/2013/01/21/the-effect-of-too-many-virtual-cpus/

Don't know how legitimate that site is because it is old.

Thanks again, 4techniques

0 Kudos
Technogeezer
Immortal
Immortal

That 1-4 cores advice for a desktop operating system (start with 2 for Windows 11, though) sounds reasonable. The nice thing about virtual machines is that you can start small and add virtual CPUs if you find you need them.

Just don't over-subscribe the number of cores (as the second article is implying). 

- Paul (Technogeezer)
Editor of the Unofficial Fusion Companion Guides
0 Kudos