[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <b647ffbd0711161526p2faf5abt2457084f1996c735@mail.gmail.com>
Date: Sat, 17 Nov 2007 00:26:41 +0100
From: "Dmitry Adamushko" <dmitry.adamushko@...il.com>
To: "Micah Dowty" <micah@...are.com>
Cc: "Ingo Molnar" <mingo@...e.hu>,
"Christoph Lameter" <clameter@....com>,
"Kyle Moffett" <mrmacman_g4@....com>,
"Cyrus Massoumi" <cyrusm@....net>,
"LKML Kernel" <linux-kernel@...r.kernel.org>,
"Andrew Morton" <akpm@...l.org>, "Mike Galbraith" <efault@....de>,
"Paul Menage" <menage@...gle.com>,
"Peter Williams" <pwil3058@...pond.net.au>
Subject: Re: High priority tasks break SMP balancer?
On 16/11/2007, Micah Dowty <micah@...are.com> wrote:
> [ ... ]
> > or just remove bit #3 (which is responsible for 8 == 1000) here:
> >
> > cat /proc/sys/kernel/sched_features
> >
> > (this one is enabled by default in 2.6.23.1)
>
> Aha. Turning off bit 3 appears to instantly fix my problem while it's
> occurring in an existing process, and I can't reproduce it on any new
> processes afterward.
humm... ok, but considering your recent summary for various kernels...
I guess, it doesn't qualify as the primary suspect... it just likely
affects something else.
>
> > cpu_1 : 2-3 nice(0) cpu-hog tasks ;
> >
> > both cpus may be seen with similar rq->load_cpu[]...
>
> When I try this, cpu0 has a cpu_load[] of over 10000 and cpu1 has a
> load of 2048 or so.
yeah, one of the options for 2048 would be presence of 2 nice(0)
cpu-hogs (1024 is the weight for a nice(0) task).
> > yeah, one would
> > argue that one of the cpu hogs could be migrated to cpu_0 and consume
> > remaining 'time slots' and it would not "disturb" the nice(-20) task
> > as :
> > it's able to preempt the lower prio task whenever it want (provided,
> > fine-grained kernel preemption) and we don't care that much of
> > trashing of caches here.
>
> Yes, that's the behaviour I expected to see (and what my application
> would prefer).
yep, that's what load_balance_newidle() is about... so maybe there are
some factors resulting in its inconsistency/behavioral differences on
different kernels.
Let's say we change a pattern for the niced task: e.g. run for 100 ms.
and then sleep for 300 ms. (that's ~25% of cpu load) in the loop. Any
behavioral changes?
>
> Thanks much,
> --Micah
>
--
Best regards,
Dmitry Adamushko
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists