All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mike Galbraith <efault@gmx.de>
To: Peter Zijlstra <peterz@infradead.org>
Cc: Ingo Molnar <mingo@elte.hu>, LKML <linux-kernel@vger.kernel.org>,
	Vaidyanathan Srinivasan <svaidy@linux.vnet.ibm.com>,
	Gautham R Shenoy <ego@in.ibm.com>,
	SureshSiddha <suresh.b.siddha@intel.com>,
	"Pallipadi,Venkatesh" <venkatesh.pallipadi@intel.com>
Subject: Re: [PATCH 7/6][RFC] sched: unify load_balance{,_newidle}()
Date: Thu, 24 Dec 2009 11:01:22 +0100	[thread overview]
Message-ID: <1261648882.15438.12.camel@marge.simson.net> (raw)
In-Reply-To: <1261646964.4937.172.camel@laptop>

On Thu, 2009-12-24 at 10:29 +0100, Peter Zijlstra wrote:
> On Thu, 2009-12-24 at 05:43 +0100, Mike Galbraith wrote:
> > On Wed, 2009-12-23 at 16:13 +0100, Peter Zijlstra wrote:
> > > load_balance() and load_balance_newidle() look remarkably similar, one
> > > key point they differ in is the condition on when to active balance.
> > > 
> > > So split out that logic into a separate function.
> > > 
> > > One side effect is that previously load_balance_newidle() used to fail and
> > > return -1 under these conditions, whereas now it doesn't. I've not yet fully
> > > figured out the whole -1 return case for either load_balance{,_newidle}().
> > > 
> > > It also differs in that sd->cache_nice_tries is now added on the 
> > > CPU_NEWLY_IDLE case.
> > 
> > Unification Looks like a good idea, less being more and all that.  I
> > suspect that last bit is why newidle effectiveness has been heavily
> > impacted.  x264 ultrafast testcase is whimpering pathetically again ;-)
> 
> That could be easily verified by setting cache_nice_tries to 0.

Was bad wild guess.

> However, I would suspect need_active_balance(.idle = CPU_NEWLY_IDLE) to
> always fail on your machine, since I don't think you've got all that
> power savings muck enabled.

Nope. Guess I need to poke need_active_balance() with a stick.

> Is that with just this patch applied or also with the next one? I
> worried more about the next one.

With both... all 8 actually, but popping last two cures idle woes.

> If just this one, that funny -1 return value thing might have played a
> role, since that seems to trigger the:
> 
>  if (pulled_task) {
>    this_rq->idle_stamp = 0;
>    break;
>  }
> 
> logic in idle_balance()
> 
> Which didn't make any sense to me, since it didn't move any task, so why
> pretend it did...

Heh, pretending is unlikely to help.

	-Mike


  reply	other threads:[~2009-12-24 10:01 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-12-17 18:50 [PATCH 0/6] Some load-balancer cleanups Peter Zijlstra
2009-12-17 18:50 ` [PATCH 1/6] sched: Move load balance code into sched_fair.c Peter Zijlstra
2009-12-17 18:50 ` [PATCH 2/6] sched: Remove the sched_class load_balance methods Peter Zijlstra
2009-12-17 18:50 ` [PATCH 3/6] sched: Remove rq_iterator usage from load_balance_fair Peter Zijlstra
2009-12-17 18:50 ` [PATCH 4/6] sched: Remove rq_iterator from move_one_task Peter Zijlstra
2009-12-17 18:50 ` [PATCH 5/6] sched: Remove from fwd decls Peter Zijlstra
2009-12-17 18:50 ` [PATCH 6/6] sched: Add a lock break for PREEMPT=y Peter Zijlstra
2009-12-18  6:57 ` [PATCH 0/6] Some load-balancer cleanups Ingo Molnar
2009-12-18  9:37   ` Peter Zijlstra
2009-12-23 15:13 ` [PATCH 7/6][RFC] sched: unify load_balance{,_newidle}() Peter Zijlstra
2009-12-24  4:43   ` Mike Galbraith
2009-12-24  9:29     ` Peter Zijlstra
2009-12-24 10:01       ` Mike Galbraith [this message]
2009-12-24 10:09       ` Mike Galbraith
2009-12-24 10:16         ` Mike Galbraith
2009-12-24 10:16         ` Peter Zijlstra
2009-12-24 12:55           ` Peter Zijlstra
2009-12-24 17:43             ` Mike Galbraith
2009-12-23 15:13 ` [PATCH 8/6][RFC] sched: Remove load_balance_newidle() Peter Zijlstra

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1261648882.15438.12.camel@marge.simson.net \
    --to=efault@gmx.de \
    --cc=ego@in.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=peterz@infradead.org \
    --cc=suresh.b.siddha@intel.com \
    --cc=svaidy@linux.vnet.ibm.com \
    --cc=venkatesh.pallipadi@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.