VMware Cloud Community
Wajeeh
Enthusiast
Enthusiast
Jump to solution

confusion for %rdy using esxtop

Dear All,

I've a virtual machine with 8vCPU, I wanted to see its %rdy time I saw for this machine is changing in range of 2.1% to 4.3%, I read that same values can be checked using vSphere client, please find attached picture showing status of 8 vCPU ready. But when seeing from SSH, I was only able to see ONE value varying between 2.1% and 4.3% why it is ONE value when there are 8vCPU as seen in attached picture. In vphere client I am able to see 8 values, so which one to match with the one seen inSSH

I read that acceptable range is upto 5%, in my case as per what I saw with SSH and with vSphere client both seems ok. But I need to understand if what I observed is correct, this status is ok and I need to consider something for my vCPU's like reduction etc from virtual machine.

thanks,

Tags (3)
0 Kudos
1 Solution

Accepted Solutions
GMCON
Enthusiast
Enthusiast
Jump to solution

What I would check is look at its actual CPU utilization statistics in vCenter over 1 day and 1 week and possibly a month if your stats go back that long and see what it's average CPU utilization is.  I think that will decide if you can reclaim resources from that VM.  If the VM's CPU utilization is maxing out at 30 percent and is most of the time averaging very low then you can easily reclaim resources.  So while using RDY to see if the host is taking too long to schedule time for your VM looking at CPU utilization for the VM will actually tell you how heavily utilized the VM resources are used.

View solution in original post

0 Kudos
7 Replies
vNEX
Expert
Expert
Jump to solution

Hi,

if you are in VM metrics view %RDY is aggregate value of all virtual machine vCPUs (all vCPU worlds of that machine).

For more info regarding CPU troubleshooting see:

VMware KB: Troubleshooting a virtual machine that has stopped responding: VMM and Guest CPU usage co...

Ready, %RDY:

This value represents the percentage of time that the virtual machine is ready to execute commands, but has not yet been scheduled for CPU time due to contention with other virtual machines.

Regards,

P.

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

So what I'm seeing in metrics is aggregate of 8vCPU, Right?

From what I've attached as screen shot do you think I am okay? as value is below 5% which means lower than 1000ms

0 Kudos
GMCON
Enthusiast
Enthusiast
Jump to solution


As you see from the esxtop is that you are receiving a percent ready, which is an aggregate of all vCPU time averaged out.  What you are looking at in vCenter is time in milliseconds for each CPU instead of percent.  On whether you should decrease that vCPU amount, you might want to unless your VM is actually using a lot of that CPU.  The more vCPU's you assign to a VM the harder the host has to work to schedule.

0 Kudos
Wajeeh
Enthusiast
Enthusiast
Jump to solution

Dear GMCON, 

Thanks for replying. Actually I am trying to find reduction is needed or not. For this I looked for metrics and then vcenter.

How do I make sure by these information about reducing vCPU or not,  I need assistance.

0 Kudos
GMCON
Enthusiast
Enthusiast
Jump to solution

What I would check is look at its actual CPU utilization statistics in vCenter over 1 day and 1 week and possibly a month if your stats go back that long and see what it's average CPU utilization is.  I think that will decide if you can reclaim resources from that VM.  If the VM's CPU utilization is maxing out at 30 percent and is most of the time averaging very low then you can easily reclaim resources.  So while using RDY to see if the host is taking too long to schedule time for your VM looking at CPU utilization for the VM will actually tell you how heavily utilized the VM resources are used.

0 Kudos
jrmunday
Commander
Commander
Jump to solution

If you want to see the %RDY times for all allocated vCPU's in your ESXTOP view then in the CPU view you can press "e" to expand/rollup the group id of the VM that you're interested in. This view gives you a nice percentage value that needs no further calculations. These values should match your realtime overview CPU chart. Using the advanced charts, you need to calculate the percentage value by converting the millisecond values (take special note of the interval duration for your calculations to be correct).

Remember that you are only going to see %RDY time where you have a VM waiting for it's cycles to be scheduled, so an over provisioned VM with no contention for CPU scheduling will not really show much %RDY time. %RDY time is a good indication of excessive SMP and contention, but if you are specifically interested to find out if your VM is over provisioned then look at the CPU utilisation and importantly the processor queue length in relation to the % utilisation.

Make sure you look at average and maximum so that your interpretation is meaningful. Take the application into account as well - is it a true multi-threaded application and will it benefit from additional cores? Do some testing to see how the application responds with fewer cores and how this impacts your %RDY time.

I have seen significant improvements in performance after reducing over provisioned VM's from 4 to 2 vCPU's, so always make sure you understand the actual requirements and cater for them. Lastly, make sure you understand the physical NUMA layout so that you provision VM's within these NUMA boundaries for additional performance.

Cheers,

Jon

vExpert 2014 - 2022 | VCP6-DCV | http://www.jonmunday.net | @JonMunday77
vNEX
Expert
Expert
Jump to solution

Hi Wajeeh,

So what I'm seeing in metrics is aggregate of 8vCPU, Right?

From what I've attached as screen shot do you think I am okay? as value is below 5% which means lower than 1000ms

Yes that is absolutely OK.


How do I make sure by these information about reducing vCPU or not,  I need assistance.

GMCON and Jon have already answered this, I can just say they are absolutely right...:)

For more detailed explanation look at performance guide below and see following sections:

- ESXi CPU Considerations (page19)

- Guest Operating SystemCPU Considerations (page 41)

http://www.vmware.com/pdf/Perf_Best_Practices_vSphere5.1.pdf

Other sources that might help you:

VMware KB: Determining if multiple virtual CPUs are causing performance issues

VMware KB: Converting between CPU summation and CPU % ready values

Regards,

P.

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