VMware Cloud Community  Contributor

Hi team,

I am trying to make sense of "CPU Ready" (Summation in ms) and "CPU Readiness" (Average in percent).

I refer to the attached screenshot. If I look at the percent value, I get 1.34% in the latest column for CPU Readiness. However, if I look at CPU Ready it is 1612 milliseconds. Applying the formula:

(CPU summation value / (<chart default update interval in seconds> * 1000)) * 100 = CPU ready %

(1612 / (20*1000)) * 100

= 8.06%

I am looking for the percentage of time my VMs are waiting for CPU resources.

Do I take the CPU Readiness value of 1.34%, or the CPU Ready value of 8.06% in this example?

Thanks.

Joe Tags (3)
1 Solution

Accepted Solutions  Enthusiast

Both. Is this a single vCPU VM or multiple (maybe 6 cores?) One quick way to validate the metrics is look at ESXTOP and look at the %RDY value for that VM. This value should be very close to the "readiness" value where VMware is now doing the math for us as of vSphere 6.

VMware KB2002181 give this simpler formula:

As a shortcut, you can use the following formulas for the default chart update intervals to get the CPU ready %:

• Realtime: CPU summation value / 200
• Past Day: CPU summation value / 3000
• Past Week: CPU summation value / 18000
• Past Month: CPU summation value / 72000
• Past Year: CPU summation value / 864000

Example: A realtime CPU summation value of 1000 is divided by 200 to give a CPU ready % of 5.

So assuming this VM has 6 vCPU, there is one more step...divide the %Ready value by the number of vCPUs. For your multi-core VM, the formula to convert Ready Summation to a % would be (1612/200)/6=1.34

5 Replies  Enthusiast

Both. Is this a single vCPU VM or multiple (maybe 6 cores?) One quick way to validate the metrics is look at ESXTOP and look at the %RDY value for that VM. This value should be very close to the "readiness" value where VMware is now doing the math for us as of vSphere 6.

VMware KB2002181 give this simpler formula:

As a shortcut, you can use the following formulas for the default chart update intervals to get the CPU ready %:

• Realtime: CPU summation value / 200
• Past Day: CPU summation value / 3000
• Past Week: CPU summation value / 18000
• Past Month: CPU summation value / 72000
• Past Year: CPU summation value / 864000

Example: A realtime CPU summation value of 1000 is divided by 200 to give a CPU ready % of 5.

So assuming this VM has 6 vCPU, there is one more step...divide the %Ready value by the number of vCPUs. For your multi-core VM, the formula to convert Ready Summation to a % would be (1612/200)/6=1.34  Contributor

Hi Mike,

Thanks for your response. Your formula is perfect - I can work back the Ready into Readiness if I divide the result by the number of vCPUs that the VM is using.

One thing I've noted however, is the %RDY in ESXTOP doesn't match the "Readiness" value. The %RDY value matches the (summation/200) which is a little confusing.

%RDY = summation/200

Which value do I take as the true CPU ready value - is it Readiness or %RDY ? Historically I've just looked at %RDY, or used the summation/200 to give me what I thought was the true CPU Ready value.... but when people are saying that 5% or greater is bad, is it 5% in Readiness or 5% in %RDY?

Cheers.

Joe  Contributor

Or better yet, should I be taking the "Readiness" value and multiplying it by the number of vCores to be getting the true CPU Ready rating?

Joe  Contributor

Actually, you know what, I've figured out the discrepancy.

I've only had the VM name selected in the chart objects. Once I enable each of the cores, I get a Readiness value for each core... adding each of these together gets me to the %RDY value - which i'm assuming is the true value. Wow.  