Re: fair group scheduler not so fair?

From: Srivatsa Vaddagiri
Date: Fri May 23 2008 - 06:12:58 EST


On Fri, May 23, 2008 at 11:39:21AM +0200, Peter Zijlstra wrote:
> On Fri, 2008-05-23 at 15:12 +0530, Srivatsa Vaddagiri wrote:
> > On Thu, May 22, 2008 at 01:18:33PM -0700, Li, Tong N wrote:
> > > Peter,
> > >
> > > I didn't look at your patches, but I thought you were flattening group
> > > weights down to task-level so that the scheduler only looks at per-task
> > > weights.
> >
> > Wouldnt that require task weight readjustment upon every fork/exit?
>
> If you were to do that - yes that would get you into some very serious
> trouble.
>
> The route I've chosen is to basically recompute it every time I need the
> weight. So every time I use a weight, I do:

and which are those points when "you need the weight"?

Basically here's what I had in mind:

Group A shares = 1024
# of tasks in group A = 1 (T0)

So T0 weight can be 1024.

T0 now forks 1000 children. Ideally now,
T0.weight = T1.weight = .... = T999.weight = 1024/1000

If we don't change each task's weight like this, then group A will
cumulatively get more share than it deserves.

Are you saying you will change each task's weight lazily? If so how?


--
Regards,
vatsa
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/