On 15 December 2015 at 09:50, Luca Abeni <luca.abeni@xxxxxxxx> wrote:Yes, I think this could be the best approach for what concerns the average
On 12/15/2015 05:59 AM, Vincent Guittot wrote:
[...]
So I don't think this is right. AFAICT this projects the WCET as the
amount of time actually used by DL. This will, under many
circumstances, vastly overestimate the amount of time actually
spend on it. Therefore unduly pessimisme the fair capacity of this
CPU.
[snip]
The 2nd definition is used to compute the remaining capacity for the
CFS scheduler. This one doesn't need to be updated at each wake/sleep
of a deadline task but should reflect the capacity used by deadline in
a larger time scale. The latter will be used by the CFS scheduler at
the periodic load balance pace
Ok, so as I wrote above this really looks like an average utilisation.
My impression (but I do not know the CFS code too much) is that the mainline
kernel is currently doing the right thing to compute it, so maybe there is
no
need to change the current code in this regard.
If the current code is not acceptable for some reason, an alternative would
be to measure the active utilisation for frequency scaling, and then apply a
low-pass filter to it for CFS.
In this case, it's probably easier to split what is already done into
a rt_avg metric and a dl_avg metric