lkml.org 
[lkml]   [2007]   [Apr]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [patch] CFS (Completely Fair Scheduler), v2

* Ingo Molnar <mingo@elte.hu> wrote:

> * William Lee Irwin III <wli@holomorphy.com> wrote:
>
> > On Tue, Apr 17, 2007 at 04:46:57PM +1000, Peter Williams wrote:
> >
> > > Have you considered using rq->raw_weighted_load instead of
> > > rq->nr_running in calculating fair_clock? This would take the
> > > nice value (or RT priority) of the other tasks into account when
> > > determining what's fair.
> >
> > I suspect you mean
> > (curr->load_weight*delta_exec)/rq->raw_weighted_load in
> > update_curr().
>
> good idea, i'll try that.

i'll try another thing too: we could perhaps get rid of rq->nr_running
and only use raw_weighted_load, because now the only main remaining
property of ->nr_running is "is it zero or not".

[ ->nr_running's only other significant use is 'group_capacity', but in
reality it is only interested in whether all CPUs in the group are
busy and what the combined cpu power of that group is, and this could
be restructured to use rq->curr and cpu_power - and become independent
of nr_running. ]

[ then there are other details like load-average, but we could change
that to be weighted-cpu-load driven - that makes sense anyway: a
reniced task should have less effect on the 'system load' than a
non-reniced task. ]

that would be one less variable to maintain in the scheduler hotpath,
and it would make smpnice an effective _replacement_ for nr_running,
instead of an add-on thing that costs a bit of performance.

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

\
 
 \ /
  Last update: 2007-04-17 10:57    [W:0.108 / U:0.792 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site