VMware Workstation

 View Only
  • 1.  What values to set Number of processors and number of cores per processor

    Posted Nov 13, 2024 09:24 AM

    I have a host pc with Intel(R) Core(TM) i9-14900K   3.20 GHz processor and 64GB of installed ram.

    I have a windows 10 Pro vm that I use to develop software on using visual studio .

    The host is a fairly new machine (month or so old) and the vm was brought over from the previous pc.

    I am using Workstation 17 pro (17.5.1 build-23298084).

    I need to know what values to set the Number of processors and number of cores per processor in the settings.

    I have been experiencing random hangs on both the host and guest machines that last a second or two.  A bit laggy.

    thanks.



  • 2.  RE: What values to set Number of processors and number of cores per processor

    Posted Nov 14, 2024 08:33 AM

    This procedure is what works for me, though I run Linux guests on Windows hosts:

    • For the host intel CPU, look up the number of cores on the intel website. Make sure to note down the number of performance cores <n> and efficient cores <m> separately. In this example <n>=8, <m>=16 for a total of 24
    • decide on the number of cores you want to be available to the VM, e.g., 4 out of 8 performance cores, or 6 out of 16 efficient cores. Do NOT try a mix of performance and efficent, as per my experience VMware Workstation doesn't differentiate between them, and you won't get the performance you are looking for inside the VM. Either go for perf or for power efficiency, depending on your use case. I do SW builds, i.e., I go for performance.
    • In the .vmx file for your VM, disable all cores that you do not want to use by repeating this line with the right numbers
      • processor<x>.use= "FALSE"
    • For the example with four performance cores, you'd disable cores 4-23 leaving cores 0-3 for VMware. For the example with 6 efficient cores, you'd disable 0-7,14-23, leaving cores 8-13, i.e., the first six efficient cores for VMware.
    • In the VM config just select the right number of processors that are still enabled, 4 or 6 in this example, and go for 1 core per processor
    • The VM will then do a 1:1 mapping and that works well enough.




  • 3.  RE: What values to set Number of processors and number of cores per processor

    Posted Nov 15, 2024 09:19 AM

    Thanks for the great information.   is the vmx  command to disable the cores: processor4.use="FALSE" or is it processor<4>.use="FALSE" 

    thanks.




  • 4.  RE: What values to set Number of processors and number of cores per processor

    Posted Nov 15, 2024 09:34 AM
    • processor4.use="FALSE"



  • 5.  RE: What values to set Number of processors and number of cores per processor

    Posted Dec 31, 2024 11:30 AM

    Hello Heinz.
    Thanks for the great explanation. Still, I can not find the terms "performance cores / efficient cores" for my Intel XEON E-2186M processor at www.intel.com. Maybe it is that easy that the description in the Windows Host Systeminfo is efficient as it tells me "6 cores / 12 logical processors", which is equal to 6 performance cores and 12 efficient cores?
    Can you confirm this assumption, or where else could I get the needed information?

    Thanks in advance, and a happy and healthy new year to all :).




  • 6.  RE: What values to set Number of processors and number of cores per processor

    Posted Jan 01, 2025 05:35 AM

    @JensSBThat CPU had no P and E cores, only cores (which are equivalent to P cores in current nomenclature): https://www.intel.com/content/www/us/en/products/sku/134859/intel-xeon-e2186m-processor-12m-cache-up-to-4-80-ghz/specifications.html The P/E core came with the 12th gen desktop CPUs, 4 years after yours was released.

    @ksukat I usually set the number of CPUs to 1 and the cores to whatever I think the VM needs. Workstation 16 and up hardware compatibility allows up to 32 vCPU cores. Your CPU has 8 performance cores which come with hyperthreading, and 16 efficiency cores, so you end up with 32 threads. It makes no sense to set more vCPU cores than available in the host, but you can't anyway in your case and VMWare's limit. I have no idea whether VMWare propagates the core information to the guest so it could employ the same core preference scheduling tasks that the host can, but in my opinion freezing is not related to that rather some problem with your hardware. Overheating or failing storage are my guesses. You should install HWInfo and check for CPU thermal throttling, and in Task Manager's performance screen for disk usage when/after the host freezes. So run Task Manager and as soon as the host become responsive check Task Manager.




  • 7.  RE: What values to set Number of processors and number of cores per processor

    Posted Jan 01, 2025 03:08 PM

    @Morc001 Thank you for the clarification. The answer for @ksukat helped me, too.




  • 8.  RE: What values to set Number of processors and number of cores per processor

    Posted Jan 02, 2025 09:07 AM

    I don't know about P and E cores, but there was a long explanation about that a couple of weeks ago.

    But in general ... if you have a surplus of hyper-threading available, you can allocate lots of them in one VM. But if you have many VMs running at the same time, you might want to consider what is useful and what is not.

    An old fashioned 32-bit application, might not be hyper-threaded at all and thus is works with one thread, only. Having said that it might use OS resources, and then more threads are used. OS is always threaded and can benefit from multiple threads. It might also use a database, which itself uses typically many threads.

    Then you might have a modern 64-bit application which uses all threads that you have. An example of that is Handbrake. Whether it can really benefit from running 8 threads in parallel is another thing - taking benefit from many parallel threads is not trivial and it depends on the application whether a speed up is relatively easy or next to impossible. With your Visual Studio compile - I would think that hyper-threading is on a good level, but I have no experience on it.

    What I really mean, that if in doubt and if this is important, you may want to monitor what happens and use the thread/core count accordingly - it's not an exact science with varying applications.

    ---
    As for hang ups: Well, hardware problems like a memory problem, will cause that and it's not easy to spot since depending on the OS, they happen when more memory is allocated (in Windows) or in random (Linux). However, I don't think that you survive from them without a shutdown.

    I would look into a program that does what it shouldn't do. Like a virus scanner trying to scan a VMWare disk file - that will hang the system, or at least might very well do that, for a short while. Since you said both host and guest - this feels even a likely scenario. One Drive, which can turn on semi-automatically, will hang the Internet if your connection is not fible optics - perhaps your symptoms are really in that area? "Automatic backup software" might hang the system if they are running - I don't know what they do - I never use them, I use scripting and robocopy, which is 100% realiable and with scripting semi-automatic.