Understanding CPU Terminology in VMware vSphere
You can add, change, or configure CPU resources to improve virtual machine performance. You can set most of the CPU parameters when you create virtual machines or after the guest operating system is installed. Some actions require that you power off the virtual machine before you change the settings. Uderstanding vCPU terminology can be more helpful in terms of performance for both Host and guest OS.
VMware uses the following terminology. Understanding these terms can help you plan your CPU resource allocation strategy:
The CPU or processor is the portion of a computer system that carries out the instructions of a computer program and is the primary element carrying out the computer’s functions. CPUs contain cores.
A physical connector on a computer motherboard that accepts a single physical CPU. Many motherboards can have multiple sockets that can in turn accept multicore processors (CPUs). The vSphere Web Client computes the total number of virtual sockets from the number of cores and the cores per socket that you select.
Comprises a unit containing an L1 cache and functional units needed to run programs. Cores can independently run programs or threads. One or more cores can exist on a single CPU.
An AMD processor corelet is architecturally equivalent to a logical processor. Certain future AMD processors will comprise a number of
compute units, where each compute unit has a number of corelets. Unlike a traditional processor core, a corelet lacks a complete set of private,dedicated execution resources and shares some execution resources with other corelets such as an L1 instruction cache or a floating-point execution unit. AMD refers to corelets as cores, but because these are unlike traditional cores, VMware uses the nomenclature of corelets to make resource sharing more apparent.
Some cores can run independent streams of instructions simultaneously. In existing implementations, cores can run one or two software threads at one time by multiplexing the functional units of the core between the software threads, as necessary. Such cores are called dual or multithreaded.
Shares specify the relative priority or importance of a virtual machine or resource pool. If a virtual machine has twice as many shares of a resource as another virtual machine, it is entitled to consume twice as much of that resource when these two virtual machines are competing for resources.
You can change CPU resource allocation settings, such as shares, reservation, and limit, when available resource capacity does not meet demands. For example, if at year end, the workload on accounting increases, you can increase the accounting resource pool reserve.
vSphere Virtual Symmetric Multiprocessing (VirtualSMP)
Feature that enables a single virtual machine to have multiple processors