linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Rakib Mullick <rakib.mullick@gmail.com>
To: Steven Rostedt <rostedt@goodmis.org>
Cc: Srikar Dronamraju <srikar@linux.vnet.ibm.com>,
	LKML <linux-kernel@vger.kernel.org>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Ingo Molnar <mingo@kernel.org>,
	Peter Zijlstra <peterz@infradead.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Paul Turner <pjt@google.com>,
	Frederic Weisbecker <fweisbec@gmail.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Mike Galbraith <efault@gmx.de>,
	Arnaldo Carvalho de Melo <acme@infradead.org>,
	Clark Williams <clark@redhat.com>,
	Andrew Theurer <habanero@us.ibm.com>
Subject: Re: [RFC] sched: The removal of idle_balance()
Date: Tue, 19 Feb 2013 10:13:10 +0600	[thread overview]
Message-ID: <CADZ9YHhhkaqqCKsfJ09M_NHeeT+gSR2ZYeCpXcYZ46_39U=Crg@mail.gmail.com> (raw)
In-Reply-To: <1361201142.23152.152.camel@gandalf.local.home>

On Mon, Feb 18, 2013 at 9:25 PM, Steven Rostedt <rostedt@goodmis.org> wrote:
> On Mon, 2013-02-18 at 13:43 +0530, Srikar Dronamraju wrote:
>> > The cache misses dropped by ~23% and migrations dropped by ~28%. I
>> > really believe that the idle_balance() hurts performance, and not just
>> > for something like hackbench, but the aggressive nature for migration
>> > that idle_balance() causes takes a large hit on a process' cache.
>> >
>> > Think about it some more, just because we go idle isn't enough reason to
>> > pull a runable task over. CPUs go idle all the time, and tasks are woken
>> > up all the time. There's no reason that we can't just wait for the sched
>> > tick to decide its time to do a bit of balancing. Sure, it would be nice
>> > if the idle CPU did the work. But I think that frame of mind was an
>> > incorrect notion from back in the early 2000s and does not apply to
>> > today's hardware, or perhaps it doesn't apply to the (relatively) new
>> > CFS scheduler. If you want aggressive scheduling, make the task rt, and
>> > it will do aggressive scheduling.
>> >
>>
>> How is it that the normal tick based load balancing gets it correctly while
>> the idle_balance gets is wrong?  Can it because of the different
>> cpu_idle_type?
>>
>
> Currently looks to be a fluke in my box, as this performance increase
> can't be duplicated elsewhere (yet). But from looking at my traces, it
> seems that my box does the idle balance at just the wrong time, and
> causes these issues.
>
A default hackbench run creates 400 tasks (10 * 40), on a i7 system (4
core, HT), idle_balance() shouldn't be in action, cause on a 8 cpu
system we're assigning 400 tasks. If idle_balance() comes in, that
means - we've done something wrong while distributing tasks among the
CPUs, that indicates a problem during fork/exec/wake balancing?

Thanks,
Rakib.

  reply	other threads:[~2013-02-19  4:13 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-02-15  6:13 [RFC] sched: The removal of idle_balance() Steven Rostedt
2013-02-15  7:26 ` Mike Galbraith
2013-02-15 12:07   ` Peter Zijlstra
2013-02-15 12:21   ` Peter Zijlstra
2013-02-15 12:32     ` Mike Galbraith
2013-02-16 16:12   ` Steven Rostedt
2013-02-17  6:26     ` Mike Galbraith
2013-02-17  7:14       ` Mike Galbraith
2013-02-17 21:54         ` Steven Rostedt
2013-02-18  3:42           ` Mike Galbraith
2013-02-18 15:23             ` Steven Rostedt
2013-02-18 17:22               ` Mike Galbraith
2013-02-15  7:45 ` Joonsoo Kim
2013-02-15 15:05   ` Steven Rostedt
2013-02-17  6:26 ` Mike Galbraith
2013-02-18  8:13 ` Srikar Dronamraju
2013-02-18 15:25   ` Steven Rostedt
2013-02-19  4:13     ` Rakib Mullick [this message]
2013-02-19  7:29       ` Michael Wang

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='CADZ9YHhhkaqqCKsfJ09M_NHeeT+gSR2ZYeCpXcYZ46_39U=Crg@mail.gmail.com' \
    --to=rakib.mullick@gmail.com \
    --cc=acme@infradead.org \
    --cc=akpm@linux-foundation.org \
    --cc=clark@redhat.com \
    --cc=efault@gmx.de \
    --cc=fweisbec@gmail.com \
    --cc=habanero@us.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=peterz@infradead.org \
    --cc=pjt@google.com \
    --cc=rostedt@goodmis.org \
    --cc=srikar@linux.vnet.ibm.com \
    --cc=tglx@linutronix.de \
    --cc=torvalds@linux-foundation.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).