On Mon, Nov 23, 2020 at 07:31:31AM -0500, Vineeth Pillai wrote:
> Hi Balbir,
> 
> On 11/22/20 6:44 AM, Balbir Singh wrote:
> > 
> > This seems cumbersome, is there no way to track the min_vruntime via
> > rq->core->min_vruntime?
> Do you mean to have a core wide min_vruntime? We had a
> similar approach from v3 to v7 and it had major issues which
> broke the assumptions of cfs. There were some lengthy
> discussions and Peter explained in-depth about the issues:
> 
> https://lwn.net/ml/linux-kernel/20200506143506.gh5...@hirez.programming.kicks-ass.net/
> https://lwn.net/ml/linux-kernel/20200515103844.gg2...@hirez.programming.kicks-ass.net/
>

One of the equations in the link is

">From which immediately follows that:

          T_k + T_l
  S_k+l = ---------                                       (13)
          W_k + W_l

On which we can define a combined lag:

  lag_k+l(i) := S_k+l - s_i                               (14)

And that gives us the tools to compare tasks across a combined runqueue.
"

S_k+l reads like rq->core->vruntime, but it sounds like the equivalent
of rq->core->vruntime is updated when we enter forced idle as opposed to
all the time.

Balbir

Reply via email to