I’m running Windows 10 in VMWare Fusion on Mac-Mini (2018) i7-8700B CPU @ 3.20GHz with 32GB RAM.
Thats 6 cores/12 Threads.
I have a very CPU intensive and highly parallizable workload for Windows that I want to run and get the maximum out of the CPU. I don’t mind if this impacts usability of host or guest while the workload is running. I just want it to run as effective as possible.
My inclination is to set the VM to use 12 Cores so that each vCPU of the i7 is available to the guest. However, when setting up more than 6 cores, VMWare gives a warning that this may negatively impact performance on both MacOS and the Guest OS. So I’m not quite sure what to make out of this. Is this just a general warning that I am allowing Windows to eat up all the CPU cycles while running my workload? Again, that wouldn’t be a problem since I am looking to fully utilize the CPU anyways.
I guess I’n not quite sure on how physical CPU cores and hyperthreading vCPUs are treated here and how the guest will be able to utilize the cores.
When I set up the VM to use all 12 Cores and start my workload with 12 threads, I can see in the MacOS ActivityMonitore that all 12 vCPUs are being fully utilized.
When I’m running the VM with 6 CPU cores and run with 12 Threads, I see only 6 CPUs fully utilized and the other 6 at 60%-75% utilization. I’m not quite certain what to make of that.
Initial test running the workload for some time show that it seems to perform better in the 12 cores setup. However, since this will still be running for a couple of days I don’t wan to get into a situation where it slows down later in the process due to some problem related to using too many cores…