RE: [PATCH] cpuidle: Add 'high' and 'low' idle state metrics
From: Doug Smythies
Date: Wed Dec 05 2018 - 18:08:01 EST
Hi Rafael,
On 2018.12.03 04:32 Rafael J. Wysocki wrote:
> Add two new metrics for CPU idle states, "high" and "low", to count
> the number of times the given state had been asked for (or entered
> from the kernel's perspective), but the observed idle duration turned
> out to be too high or too low for it (respectively).
I wonder about the "high" "low" terminology here.
> These mertics help to estimat the quality of the CPU idle governor
> in use.
Yes, very useful. Thanks.
Here the terms are mixed with "deep" and "shallow"
> + unsigned long long high; /* Number of times it's been too deep */
> + unsigned long long low; /* Number of times it's been too shallow */
> +``high``
> + Total number of times this idle state had been asked for, but the
> + observed idle duration was too short to match its target residency.
> +
O.K. To avoid ambiguity, how about naming them "too_short" and "too_long"?
> +``low``
> + Total number of times this idle state had been asked for, but a deeper
> + idle state would have been a better match for the observed idle duration.
Even though I read the patch, by the time I actually looked at the numbers I had
forgotten the meaning. I had look at idle state 0 and 4 (the deepest for my computer)
to figure it out:
doug@s15:~/c$ cat /sys/devices/system/cpu/cpu0/cpuidle/state0/low
259871
doug@s15:~/c$ cat /sys/devices/system/cpu/cpu0/cpuidle/state0/high
0
doug@s15:~/c$ cat /sys/devices/system/cpu/cpu0/cpuidle/state4/low
0
doug@s15:~/c$ cat /sys/devices/system/cpu/cpu0/cpuidle/state4/high
5584
Because state 0 can not be too short and state 4 can not be too long.
... Doug