Hi everyone,
I’m using the API to pull VM performance stats, however I’m having trouble interpreting what I’m seeing.
For instance, I’m pulling “hypervisor.cpu_ready_time_ppm” for one of my VMs and getting the following output:
{
"statsSpecificResponses": [
{
"successful": true,
"message": null,
"startTimeInUsecs": 1576458000000000,
"intervalInSecs": 30,
"metric": "hypervisor.cpu_ready_time_ppm",
"values": [
108,
97,
144,
107,
89,
92,
78,
74,
47,
49,
90,
.... Output truncated for brevity
I get that the metric is a percentage but obviously you can’t have 144% of time, so how should I interpret these values?
What I really need is a guide and/or reference that explains all of these metrics and how to interpret them.
I found the following link but it doesn’t really tell me what I want to know:
Best answer by sbarab
Percentage of the time a virtual machine waits to use the physical CPU out of the total CPU time allotted to the VM.
and it is reported in percentage format.
Based on the above it should be possible to have percentages higher than 100,
If your vm is scheduled to run for x number of units of time, and you had to wait more than that to run that amount of time (say 1.4x) , then the percentage will be more than 100%. (140% here)
I think the confusion may come from the fact that you assume the time the Vm is “running” (performing instructions in cpu and not sitting idle) is the same as what your collected interval was (in this case 30 seconds).
Hope this helps explaining it. Let me kow your thoughts and questions about it (if any).
One more thing, you may already know that this measure alone is not the best way to dig into the performance of a VM and you should consider other factors as well (Just thought mentioning it).