lkml.org 
[lkml]   [2006]   [Jan]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: smp 'nice' bias support breaks scheduler behavior
On Fri, Jan 27, 2006 at 10:36:36AM +1100, Peter Williams wrote:
> Con Kolivas wrote:
> > On Thursday 26 January 2006 21:52, Siddha, Suresh B wrote:
> >>>[PATCH] sched: implement nice support across physical cpus on SMP
> >>
> >>I don't see imbalance calculations in find_busiest_group() take
> >>prio_bias into account. This will result in wrong imbalance value and
> >>will cause issues.
> > in 2.6.16-rc1:
> >
> > find_busiest_group(....
> >
> > load = __target_load(i, load_idx, idle);
> > else
> > load = __source_load(i, load_idx, idle);
> >
> > where __target_load and __source_load is where we take into account prio_bias.

We take that into consideration only while calculating the loads.. But we
don't scale it down while calculating imbalance, resulting in the problem
I mentioned.

> >
> > I'm not sure which code you're looking at, but Peter Williams is working on
> > rewriting the smp nice balancing code in -mm at the moment so that is quite
> > different from current linus tree.
> >

Peters changes in -mm fix this issue. Will this be pushed to Linus tree
before 2.6.16 comes out?

>
> Yes, indeed. And it would be very helpful if people interested in this
> topic (and that have test suites designed to test whether "niceness" is
> being well balanced across CPUs) could test it. This is especially the
> case for larger systems as I do not have ready access for testing on them.

I don't have any test suites for testing "niceness". But I can def check
more to make sure that it doesn't cause any regression :)

thanks,
suresh

>
> >
> >
> >>For example on a DP system with HT, if there are three runnable processes
> >>(simple infinite loop with same nice value), this patch is resulting in
> >>bouncing of these 3 processes from one processor to another...Lets assume
> >>if the 3 processes are scheduled as 2 in package-0 and 1 in package1..
> >>Now when the busy processor on package-1 does load balance and as
> >>imbalance doesn't take "prio_bias" into account, this will kick active
> >>load balance on package-0.. And this is continuing for ever, resulting
> >>in bouncing from one processor to another.
> >>
> >>Even when the system is completely loaded and if there is an imbalance,
> >>this patch causes wrong imabalance counts and cause unoptimized
> >>movements.
> >>
> >>Do you want to look into this and post a patch for 2.6.16?
-
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: 2006-01-27 00:59    [W:0.061 / U:1.200 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site