VMware Communities
eskimo682
Contributor
Contributor

Number of cores

For once I cannot figure out the number of cores and how to assign them correctly. In Player I only get to set the number with a maximum of 16 (vmware 17). That then translates into Windows showing me 2 sockets with 8 virtual processors (when chosing the logical view). I prefer seeing 16 in the graph. 

Now, the lower part of the pic shows me having 14+6 in my main machine. Since the logical processors are simpler I would be just happy to let vmware use 14+2 then and let the 4 remaining handle mail & al.

But the only way I managed to achieve this was by changing the vmx to
numvcpus = "16"
cpuid.coresPerSocket = "16"
(as shown in the upper part of the pic)

I probably should boot up my Vmware Pro and check what it has in the CPU UI and what it writes into the vmx. Or run a CPU speed test with a few different options and see what I get as actual results.

So I guess my question is, is this just how Windows displays things (2 and 8)? Selecting number of processor cores = 16 in vmware becomes 
numvcpus = "16"
cpuid.coresPerSocket = "4"
in the vmx
This makes no sense to me either, would have believed in a quad but I guess I hit the 2 socket limit (the virtual machine is running Win10).

Is that beneficial somehow compared to having 1 socket and 16 cores (as Windows shows it for the numvcpus = "16" , cpuid.coresPerSocket = "16" configuration)?

vmware_cpus.jpg

Amazing I could not find a proper explanation of all this anywhere. Apart from some posts saying vmware sucks with pcores and ecores, basically use only pcores. 

Reply
0 Kudos
2 Replies
eskimo682
Contributor
Contributor

Of course I had to run some benchmarks to test things out. Single thread/All.

 14 pcores2/814 pcores + 2 ecores
Geekbench62249/111042246/93722277/11138
Passmark3696/243573914/190433579/25343

 

So assuming pcores are used first, using only the amount of pcores seems pretty good (numvcpus = "X" and cpuid.coresPerSocket = "X").

2 sockets and 8 logical which is what vmware uses by default if you select the maximum 16, either gets a massive hit from switching or then we are not using 16 at all, maybe only 8 (numbers would indicate we do use 16 though). Still surprised by the massive hit though, could also be benchmark related of course.

Going for 16 using 2 ecores raises the full score marginally, each ecore=30%*pcore in Passmark, almost no effect in Geekbench.

Going to stay at 16=14+2 then. Not for the marginal increase but it seems to work and if vmware someday would upgrade so that the virtual machine would understand ecores, maybe having 2 ecores in there would make sense.

Now, if someone could prove using only 12 pcores and leaving 2 pcores and 6 ecores for the main machine because of Teams recordings or something, that would be an interesting read.

Reply
0 Kudos
eskimo682
Contributor
Contributor

Also stumbled upon this which holds the interesting idea of disabling the ecores in your vmx:

https://communities.vmware.com/t5/VMware-Workstation-Pro/E-Core-and-P-core-support-in-VmWare-Worksta...

When compiling, I haven't seen any throttling or parking issues myself.

Reply
0 Kudos