VMware Cloud Community
grantcunningham
Contributor
Contributor

CPU Ready time question (PCPU vs VCPU)

Hi All,

I'm trying to validate CPU Ready % for some of our clusters and was wondering why there is a difference in PCPU Ready % vs VCPU Ready %

I'm looking at PCPU Ready % on a ESX host and I can see the Summation value of 7000MS in the real time charts. When converted this gives me a percentage value of 35% (CPU summation value / (<chart default update interval in seconds> * 1000)) * 100 = CPU ready %)

Am I calculating this wrong?  This seems extremely high.

When I look at ESXTOP on that same host, I can see the VCPU's Ready % (%RDY and also looking at %VMWAIT?) all well under vmware's recommended best practice of %5

My question's are;

1. Am I calculating this value correctly?

2. Why do my VCPU's show a different percentage than my PCPU? I would of thought that they would be aligned.

3. Should I calculate my CPU Ready % on a per PCPU basis (eg. %RDY or %VMWAIT)

4. Why is my PCPU Ready time so high if the VM's CPU Ready % are so low.

Any help would be much appreciated.

Thanks.

0 Kudos
1 Reply
vNEX
Expert
Expert

Hi,

You forget to divide it by number of logical CPUs in your host or by number of vCPU in your VM!

In ESXTOP you see all these metrics in real-time view which is refreshed every 5 seconds ... there is no need for such formulas above.

The value you see in ESXTOP for a VM is aggregate sum of %RDY for all vCPUs dedicated to VM so for SMP virtual machine you must divide this number to number of VM vCPUs.

If you wan to see %RDY for every vCPU separately in ESXTOP push "e" to expand VM worlds and type VM GID in the list you will see %RDY for each vCPU (vmx-vcpu-0, vmx-vcpu-1, vmx-vcpu-2 ....) separately.

I'm looking at PCPU Ready % on a ESX host and I can see the Summation value of 7000MS in the real time charts. When converted this gives me a percentage value of 35% (CPU summation value / (<chart default update interval in seconds> * 1000)) * 100 = CPU ready %)

Am I calculating this wrong?  This seems extremely high. Am I calculating this value correctly?

So for dual socket quad core host with HT enabled the calculation would be following:

7000/20000*100/16= 2,1875 % of ready time per logical CPU which is absolutely no problem at all.

%VMWAIT - means time VM spent in blocked state waiting for some events to complete; usually waiting for I/O

High VMWAIT can be caused by poor storage performance or high latency of some pass-through device configured for the VM.

_________________________________________________________________________________________

If you found this or any other answer helpful, please consider to award points. (use Correct or Helpful buttons)

Regards,

P.

Message was edited by: vNEX

_________________________________________________________________________________________ If you found this or any other answer helpful, please consider to award points. (use Correct or Helpful buttons) Regards, P.
0 Kudos