Knowledge Base

The VMware Knowledge Base provides support solutions, error messages and troubleshooting guides
Search the VMware Knowledge Base (KB)   View by Article ID

Associating a Virtual Machine With a Particular Host Processor (110)


I have a multiprocessor or hyperthreaded processor system, but my virtual machine shows only one processor. Why is that?


VMware products run on symmetric multiprocessor (SMP) systems, also referred to as multiprocessor specification (MPS) systems. However, the environment provided within each virtual machine is a uniprocessor system.

If you have multiple virtual machines running at the same time, some use one processor and some use another, thus taking advantage of the multiple processors in the system.

Associating a Virtual Machine with a Particular Processor on a Multiprocessor/Hyperthreaded Processor Host

If your host is a multiprocessor system (multiple physical processors) or if the processor or processors are hyperthreaded (where each physical processor is split into two or more logical processors), you can associate each virtual machine with a specific processor on the host.

By default, each virtual machine is associated with all physical and logical processors on the host. The virtual machine uses whichever processor is available at the time it needs to execute instructions.

To associate a virtual machine with a specific physical or logical processor on the host, do the following.

Note: These steps apply to virtual machines on Windows hosts and on Linux hosts with 2.6.x kernels.

  1. In a text editor, open the virtual machine's configuration file (.vmx).
  2. Add the following line for each processor with which you do not want to associate the virtual machine:
    processor#.use = FALSE
    where # is the number of the processor on the host, the count beginning at 0 .

On a Windows host, processors are listed in the registry. To view the processors, complete the following steps.

  1. Choose Start>Run, then type regedt32. The Windows registry opens.
  2. In the registry, choose HKEY_LOCAL_MACHINE>HARDWARE>DESCRIPTION> System>CentralProcessor. Each CPU on the host is listed here, numbered starting with 0.

On a Linux host, processors are listed in /proc/cpuinfo.

Typically, on a Windows or Linux 2.6.x kernel system with multiple hyperthreaded processors, the physical processors are numbered first, followed by the logical processors. Keep this numbering system in mind if you move the virtual machine to another host with a different number of physical or logical processors.

Caution: GSX Server 3.1 and earlier and Workstation for Linux do not honor the processor#.use option. Thus, a virtual machine cannot be associated with a specific CEC while on a Linux host, and the workaround discussed here does not work. Keep this in mind if you move a virtual machine from a GSX Server or Workstation Windows host to a Workstation or older GSX Server Linux host.


110; hyper; thread; hyper-thread; gsx320

Request a Product Feature

To request a new product feature or to provide feedback on a VMware product, please visit the Request a Product Feature page.


  • 11 Ratings

Did this article help you?
This article resolved my issue.
This article did not resolve my issue.
This article helped but additional information was required to resolve my issue.
What can we do to improve this information? (4000 or fewer characters)
  • 11 Ratings