All of lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Zijlstra <a.p.zijlstra@chello.nl>
To: Tim Chen <tim.c.chen@linux.intel.com>
Cc: Suresh Siddha <suresh.b.siddha@intel.com>,
	Alex Shi <alex.shi@intel.com>, Ying <ying.huang@intel.com>,
	linux-kernel <linux-kernel@vger.kernel.org>
Subject: Re: load balancing regression since commit 367456c7
Date: Fri, 20 Apr 2012 16:00:21 +0200	[thread overview]
Message-ID: <1334930421.2463.60.camel@laptop> (raw)
In-Reply-To: <1334681054.3796.28.camel@schen9-DESK>

On Tue, 2012-04-17 at 09:44 -0700, Tim Chen wrote:
> On Tue, 2012-04-17 at 14:09 +0200, Peter Zijlstra wrote:
> > On Tue, 2012-04-10 at 18:06 -0700, Tim Chen wrote:
> > >                   |--56.52%-- load_balance
> > >                   |          idle_balance
> > >                   |          __schedule
> > >                   |          schedule 
> > 
> > Ahh, I know why I didn't see it, I have a CONFIG_PREEMPT kernel and
> > idle_balancing stops once its gotten a single task over instead of
> > achieving proper balance.
> > 
> > And since hackbench generates insanely long runqueues and the patch that
> > caused your regression 'fixed' the lock-breaking it will now iterate the
> > entire runqueue if needed to achieve balance, which hurts.
> > 
> > I think the patch I send ought to work, let me try disabling
> > CONFIG_PREEMPT.
> > --
> 
> yes, CONFIG_PREEMPT is turned off on my side.  With the patch that you
> sent, the slowed down went from a factor of 4 down to a factor 2. 
> 
> So the run time is now twice as long vs four time as long vs v3.3
> kernel.

Ok, so I can't reproduce this on my WSM-EP.. even !PREEMPT kernels are
consistent with hackbench times with or without that patch.

Can you still send your full .config? Also, do you have cpu-cgroup muck
enabled and are you using that systemd shite?

What does the below patch (on top of the previous) do?

---
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -784,7 +784,7 @@ account_entity_enqueue(struct cfs_rq *cf
 		update_load_add(&rq_of(cfs_rq)->load, se->load.weight);
 #ifdef CONFIG_SMP
 	if (entity_is_task(se))
-		list_add_tail(&se->group_node, &rq_of(cfs_rq)->cfs_tasks);
+		list_add(&se->group_node, &rq_of(cfs_rq)->cfs_tasks);
 #endif
 	cfs_rq->nr_running++;
 }



  reply	other threads:[~2012-04-20 14:00 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-04-11  1:06 load balancing regression since commit 367456c7 Tim Chen
2012-04-17 11:43 ` Peter Zijlstra
2012-04-17 12:09 ` Peter Zijlstra
2012-04-17 16:44   ` Tim Chen
2012-04-20 14:00     ` Peter Zijlstra [this message]
2012-04-20 16:40       ` Tim Chen
2012-04-20 16:53         ` Peter Zijlstra
2012-04-20 17:13           ` Tim Chen
2012-04-20 17:33             ` Peter Zijlstra
2012-04-25 14:56               ` Peter Zijlstra
2012-04-25 17:38                 ` Tim Chen
2012-04-25 17:43                   ` Peter Zijlstra
2012-04-25 17:58                     ` Tim Chen
2012-04-26 11:56                 ` [tip:sched/urgent] sched: Fix more load-balancing fallout tip-bot for 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=1334930421.2463.60.camel@laptop \
    --to=a.p.zijlstra@chello.nl \
    --cc=alex.shi@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=suresh.b.siddha@intel.com \
    --cc=tim.c.chen@linux.intel.com \
    --cc=ying.huang@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.