[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Thu, 9 Sep 2010 13:25:12 +0200
From: Heiko Carstens <heiko.carstens@...ibm.com>
To: Tim Blechmann <tim@...ngt.org>
Cc: Peter Zijlstra <peterz@...radead.org>,
Mike Galbraith <efault@....de>,
fabio de francesco <fabio@...anix.org>,
LKML <linux-kernel@...r.kernel.org>, Ingo Molnar <mingo@...e.hu>
Subject: Re: [process scheduler] Possible bug in context_swich()?
On Thu, Sep 09, 2010 at 01:12:18PM +0200, Tim Blechmann wrote:
> On Thursday, September 09, 2010 12:39:06 pm Peter Zijlstra wrote:
> > On Thu, 2010-09-09 at 04:32 +0200, Mike Galbraith wrote:
> > > On Wed, 2010-09-08 at 17:54 +0200, Peter Zijlstra wrote:
> > > > On Wed, 2010-09-08 at 17:28 +0200, fabio de francesco wrote:
> > > > > In context_switch() (in linux/kernel/sched.c), starting with release
> > > > > 2.6.33, two "unlikely" macro have been changed to "likely". I think
> > > > > the previous logic was right while the latter is wrong.
> > > > >
> > > > > In case I am missing something I, please, ask someone to explain the
> > > > > above mentioned inversion of logic through releases.
> > > >
> > > > It helps if you CC people, LKML alone is a bit of a gamble.
> > > >
> > > > git blame kernel/sched.c, will tell you that the change you refer to
> > > > comes from:
> > > >
> > > > commit 710390d90f143a9ebb87a475215140f426792efd
> > > > Author: Tim Blechmann <tim@...ngt.org>
> > > > Date: Tue Nov 24 11:55:27 2009 +0100
> > > >
> > > > sched: Optimize branch hint in context_switch()
> > > >
> > > > Branch hint profiling on my nehalem machine showed over 90%
> > >
> > > > incorrect branch hints:
> > > That change never made any sense to me, seems Tim must have been
> > > measuring a kthread load. I benched at the time, and saw absolutely
> > > zero difference one way or the other wrt max ctx rate on my Q6600.
> >
> > One option is to simply remove the whole branch hint.. But lets ask Tim
> > what kind of workload he used..
>
> i was using a standard desktop workload, nothing special ...
Just out of curiosity I tried this with two kernel builds on a six way
machine with latest git head and got these numbers:
correct incorrect % Function File Line
------- --------- - -------- ---- ----
644387 484258 42 context_switch sched.c 2851
677534 451199 39 context_switch sched.c 2858
So the hints seem to be rather pointless.
--
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