I am trying to understand vCPU concept in VMware.
To start with Physical component
SOCKET = Physical hole where in one Processor can fit in.
PROCESSOR = CPU
CORE = Logical Processor in physical chipset.
LOGICAL PROCESSOR = Amount of CPU's presented to the ESX Host
Example: If I have Two sockets with Two(DUAL) Core Processors means I have total 8 Logical Processors! Is this Correct?
Now with VMWARE vCPU concept considering ESX version 5.x Maximums document (http://www.vmware.com/pdf/vsphere5/r50/vsphere-50-configuration-maximums.pdf)
Achievable number of vCPU per Core = 25 .. What does mean by this? If I have one dual core processor (=2 cores) I can create(overcommit) 50 vCPUs from two cores???
1 Physical CPU X 2 Cores X 25 vCPU = 50 vCPU
Does this mean that 1 Core supports 25 vCPUs ?
There is no one to one relationship between CORES and vCPUs. but you can have 1:1 ratio for good performance.Like 1 CORE = 1 vCPU = 1 VM will be a good practice.???
Please correct me if above is correct.It will be great if you can use reference from VMware documentation that explains this.
Thanks in Advance
Avinash
LOGICAL PROCESSOR = Amount of all logical cores of cpu presented to the ESX Host
Example: If I have Two sockets with Two(DUAL) Core Processors means I have total 8 Logical Processors! Is this Correct?
2 socket x no of core per socket x logical cores( not sure how much it maybe) = this will give you total logical processor, not sure it that would be 8 , more or less.
Achievable number of vCPU per Core = 25 ..
Yes theorectically this is possible but not in actual scenario.
I have the same question and am struggling to find any decent answers to all of this. I suspect no one really has a clear understandng about this - correct me if I am wrong.
I understand a 'socket' is the physical processor package if you like and a 'core' is a processor within the socket's dye. So we can have 8 cores or more on a single processor socket.
What I am not clear about is when I select 1,2,4 or 8 CPUs in my virtual machine am I specifying that the VM will use 1 socket (and all the cores within it) or 1 core?
Also my ESXi server has 64 logical processors. Does that mean I could create only a maximum of 64 1 vCPU VMs on that host?
A Logical CPU (:CPU) as you pointed equates to a physical core or HT thread - so if you have an 8 core physical that has hyperthreading enabled you will end up with 16 LCPUs being presented by that physical CPU -
Now a virtual CPU is scheduled to single LCPU - So if you have a multiple vcpu VM the vcpu will be scheduled to a LCPU on the host - the LCPUs that are used do not necessarily have to be in the same physical CPU -
You can over committ CPU in an ESXi host - in fact with vSphere depending on VM load you can 12 vCPU per LCPU - so with your example yoouu could have 700+ vCPUs
Well,
As mentioned someone should explain this in laymans terms with concept and then use practical/recommeneded best practice.
This will help vmware community to refer this is in real world.
Here is my understanding and see if that helps
some tips before we get into basics
Hyeperthreading is not needed in latest version of VMWARE ESX so no need to subdivide one physical CPU beyond core.
Refer Vmware virtual machine Maximum http://www.vmware.com/pdf/vsphere4/r41/vsp_41_config_max.pdf
One CPU named "Two core CPU" means one physical processor chipset divided into two logical processors.Your machine will show 2 CPU's in device manager
So you have two processors(cores).Now per Vmware Maximum you can have "25 vCPUs per core" means you have 50 vCPUs.
you can create 50 VM's with 1 vCPU per VM.
In reality it is based on type of application and "workoads" so ration could be 1:20 where 1 is Core and 20 is vCPU.
to get idea on workload and how many vCPUs ,you should explore tool Vmware ROI and TCO calculator
some tips before we get into basics
Hyeperthreading is not needed in latest version of VMWARE ESX so no need to subdivide one physical CPU beyond core.
Refer Vmware virtual machine Maximum http://www.vmware.com/pdf/vsphere4/r41/vsp_41_config_max.pdf
VMware Best Practice is still to enable HT is possible because what you want to provide to the vmkernel is the ability to provide the opportuntity to schedule the instruction being generated by the VMs - so with HT enabled you are providing double the number of locations for the vm's vcpu to be scheduled -
So you have two processors(cores).Now per Vmware Maximum you can have "25 vCPUs per core" means you have 50 vCPUs.
you can create 50 VM's with 1 vCPU per VM.
In reality it is based on type of application and "workoads" so ration could be 1:20 where 1 is Core and 20 is vCPU.
to get idea on workload and how many vCPUs ,you should explore tool Vmware ROI and TCO calculator
or the ration could be higher 1:35 with relly light workloads
hello, am still miss understand about vmware vsphere licensing with cpu. Could you share me more ?
Best regards,