VMware Cloud Community
Kermitdafwog
Contributor
Contributor
Jump to solution

vCPU comparative to physical CPU and cores

Hi

I am a VMWare admin and was recenlty asked by a customer in our cloud environment to add an extra vCPU to one of their VMs so that it aligned more with the physical counterpart they had migrated away from.  The Physical version had 2 quad core CPUs (running at 1.4Ghz) and the virtual version now has 2 vCPUs (The ESXI host has 2.4Ghz CPUs).  I have since been asked how the two compare and i am struggling to explain it to their project...

The user logs in to the physical machine and runs task manager and sees the 8 cores working away

He then logs into the VM and see the two CPUs working away.  You can tell he thinks the performance wont stack up in ESXi....

How does the two scenarios compare and how can I explain that is comparable in an ESXi environment - and is it actually comparable?

From the way i see it, adding a second CPU to the VM means that, providing 2 physical CPUs on the host are available, instructions can be run on them by the guest so that means 2 simultaneously.

On the physical server, the 8 cores can be utilised simultaeously so how can this ever be comparable?

Or have i got this completely wrong?!  Performance and the rest of it has never been my strong point!!

Any advice or answers on the above would be gratefully received

thanks

0 Kudos
1 Solution

Accepted Solutions
schepp
Leadership
Leadership
Jump to solution

Hi.

Each vCPU is mapped to a logical processor, which is a physical core on your host system if you don't have Hyperthreading enabled.

I don't like the physical to virtual comparison, but of course I know it from my customers.

In most cases, the physical ressources have never been used effectively, as the Operating System or the application running on top of it was not able to use for example the 8 cores of the two quad core cpus in your example.

So most times you can get the same performance with only 1 or 2 vCPUs after moving to virtualization.

If you want to know more you might want to read the Ressource Management Guide: http://pubs.vmware.com/vsphere-50/topic/com.vmware.ICbase/PDF/vsphere-esxi-vcenter-server-501-resour...

Regards

View solution in original post

0 Kudos
3 Replies
schepp
Leadership
Leadership
Jump to solution

Hi.

Each vCPU is mapped to a logical processor, which is a physical core on your host system if you don't have Hyperthreading enabled.

I don't like the physical to virtual comparison, but of course I know it from my customers.

In most cases, the physical ressources have never been used effectively, as the Operating System or the application running on top of it was not able to use for example the 8 cores of the two quad core cpus in your example.

So most times you can get the same performance with only 1 or 2 vCPUs after moving to virtualization.

If you want to know more you might want to read the Ressource Management Guide: http://pubs.vmware.com/vsphere-50/topic/com.vmware.ICbase/PDF/vsphere-esxi-vcenter-server-501-resour...

Regards

0 Kudos
Kermitdafwog
Contributor
Contributor
Jump to solution

Hi

Thanks for the reply - really helpful!

cheers

Kerm

0 Kudos
EdWilts
Expert
Expert
Jump to solution

Physical to Virtual comparisons can be challenging and one of the reasons is that you could be virtualizing a 5-year old physical server onto a modern server with signficantly improvements in CPU and memory management.  You could easily get 5x the performance for the same Ghz.  An E5430 at 2.66Ghz has a PassMark rating of of 4,142.  An E5-2670 at 2.6 Ghz has a PassMark rating of 15,625.

One of the things to look at is not the number of virtual CPUs that the guest has, but what those CPUs are doing.  Are they busy?  If not, adding more vCPUs will likely not make things better and could in fact make things worse.  If the guest has 2 vCPUs and they're both sitting at 100% when the application is busy, adding vCPUs will likely help.

The other thing to look at is virtual NICs that were asigned when the guest was P2V'd.  If the guest is doing a lot of network I/O, using flexible NICs can cause you to use a LOT of CPU that you should not be doing.  Migrate to VMXNET3 and watch the CPU utilization drop.

Performance management is not easy but as a VMware admin, it's important for you to brush up on the skills or the guest teams will run you over.

.../Ed (VCP4, VCP5)