VMware {code} Community
maciej_wos
Contributor
Contributor
Jump to solution

Ready time statistic - need some clarification

Hi!

I'm having some trouble understanding Ready Time statistic. As far as I know it represents the time a VM is ready to execute an instruction, but is not scheduled any processor time. Its iportant stat for me, but I can't figure out how to use the redy time VIM provides.

Metric 11-CPU Ready, Rollup: summation, StatsType: delta

Why is it delta stat?

From the doc about delta type stat:

"A measurement of the difference between successive raw measurements."

And thus I can measure increase/decrease in ready time, but not the time itself. The ready time itself would give me the mesurement of interactivity, which is what I'm looking for.

Anyone uses this stat?

Reply
0 Kudos
1 Solution

Accepted Solutions
hrobinson
VMware Employee
VMware Employee
Jump to solution

cpu ready

Counter : "cpu.ready"

Unit : milliseconds

Aggeregate Available : no

Instance Specific Available : yes

Notes:

\- This is the amount of time the vcpu was in "ready" state.

i.e. ready time is the time spent by the VM in the scheduler

ready queue. That is that the only reason its not running is that there

are other higher priority VMs running on all the available cpus. So, its

in effect waiting to be scheduled due to system load.

\- % ready can be calculated from this counter as (readyTime * 100) / statsIntervalPeriodInMilliSeconds.

A VM has a high ready time and a high busy time, then it wants to run a lot, but is not able to do so because other VMs are consuming resources on the system. It could be that a bunch of threads just got ready to run at exactly the same time, so some of them can't run and therefore accumulate ready time. A high ready time might not be an issue by itself: for example, if you have a high ready time but low busy time, then you aren't running too frequently, it is just than when you want to run, others are running instead.

If you want to calculate the ready time over a period, then you (sum the ready time delta's for the stats over the period), divide it by the period length and then multiply it by 100. Note that ready time is expressed in milliseconds.

H

View solution in original post

Reply
0 Kudos
2 Replies
hrobinson
VMware Employee
VMware Employee
Jump to solution

cpu ready

Counter : "cpu.ready"

Unit : milliseconds

Aggeregate Available : no

Instance Specific Available : yes

Notes:

\- This is the amount of time the vcpu was in "ready" state.

i.e. ready time is the time spent by the VM in the scheduler

ready queue. That is that the only reason its not running is that there

are other higher priority VMs running on all the available cpus. So, its

in effect waiting to be scheduled due to system load.

\- % ready can be calculated from this counter as (readyTime * 100) / statsIntervalPeriodInMilliSeconds.

A VM has a high ready time and a high busy time, then it wants to run a lot, but is not able to do so because other VMs are consuming resources on the system. It could be that a bunch of threads just got ready to run at exactly the same time, so some of them can't run and therefore accumulate ready time. A high ready time might not be an issue by itself: for example, if you have a high ready time but low busy time, then you aren't running too frequently, it is just than when you want to run, others are running instead.

If you want to calculate the ready time over a period, then you (sum the ready time delta's for the stats over the period), divide it by the period length and then multiply it by 100. Note that ready time is expressed in milliseconds.

H

Reply
0 Kudos
maciej_wos
Contributor
Contributor
Jump to solution

Thanks for information.

But it still botheres me - why is it listed as delta type statistic both in doc and in the counter itself? i.e. from your description and from the live data it clearly is absolute value...

Reply
0 Kudos