From: "Siddha, Suresh B" <suresh.b.siddha@intel.com>
To: Nick Piggin <nickpiggin@yahoo.com.au>
Cc: "Siddha, Suresh B" <suresh.b.siddha@intel.com>,
Ingo Molnar <mingo@elte.hu>, Andrew Morton <akpm@osdl.org>,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH 10/13] remove aggressive idle balancing
Date: Tue, 8 Mar 2005 11:36:31 -0800 [thread overview]
Message-ID: <20050308113630.A13045@unix-os.sc.intel.com> (raw)
In-Reply-To: <422D5F9B.9070109@yahoo.com.au>; from nickpiggin@yahoo.com.au on Tue, Mar 08, 2005 at 07:17:31PM +1100
On Tue, Mar 08, 2005 at 07:17:31PM +1100, Nick Piggin wrote:
> Siddha, Suresh B wrote:
> > That still might not be enough. We probably need to pass push_cpu's
> > sd to move_tasks call in active_load_balance, instead of current busiest_cpu's
> > sd. Just like push_cpu, we need to add one more field to the runqueue which
> > will specify the domain level of the push_cpu at which we have an imbalance.
> >
>
> It should be the lowest domain level that spans both this_cpu and
> push_cpu, and has the SD_BALANCE flag set. We could possibly be a bit
I agree.
> more general here, but so long as nobody is coming up with weird and
> wonderful sched_domains schemes, push_cpu should give you all the info
> needed.
>
> > push_cpu might not be the ideal destination in all cases. Take a NUMA domain
> > above SMT+SMP domains in my above example. Assume P0, P1 is in node-0 and
> > P2, P3 in node-1. Assume Loads of P0,P1,P2 are same as the above example,with P3
> > containing one process load. Now any idle thread in P2 or P3 can trigger
> > active load balance on P0. We should be selecting thread in P2 ideally
> > (currently this is what we get with idle package check). But with push_cpu,
> > we might move to the idle thread in P3 and then finally move to P2(it will be a
> > two step process)
> >
>
> Hmm yeah. It is a bit tricky. We don't currently do exceptionally well
> at this sort of "balancing over multiple domains" very well in the
> periodic balancer either.
With periodic balancer, moved tasks will not be actively running
and by the time it gets a cpu slot, it will most probably be on the
correct cpu (though "most probably" is the key word here ;-)
> But at this stage I prefer to not get overly complex, and allow some
> imperfect task movement, because it should rarely be a problem, and is
> much better than it was before. The main place where it can go wrong
> is multi-level NUMA balancing, where moving a task twice (between
> different nodes) can cause more problems.
With active_load_balance, we will be moving the currently running
process. So obviously if we can move in one single step, that will be nice.
I agree with the complexity part though. And it will become more complex
with upcoming dual-core requirements.
thanks,
suresh
next prev parent reply other threads:[~2005-03-08 20:27 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-02-24 7:14 [PATCH 0/13] Multiprocessor CPU scheduler patches Nick Piggin
2005-02-24 7:16 ` [PATCH 1/13] timestamp fixes Nick Piggin
2005-02-24 7:16 ` [PATCH 2/13] improve pinned task handling Nick Piggin
2005-02-24 7:18 ` [PATCH 3/13] rework schedstats Nick Piggin
2005-02-24 7:19 ` [PATCH 4/13] find_busiest_group fixlets Nick Piggin
2005-02-24 7:20 ` [PATCH 5/13] find_busiest_group cleanup Nick Piggin
2005-02-24 7:21 ` [PATCH 6/13] no aggressive idle balancing Nick Piggin
2005-02-24 7:22 ` [PATCH 7/13] better active balancing heuristic Nick Piggin
2005-02-24 7:24 ` [PATCH 8/13] generalised CPU load averaging Nick Piggin
2005-02-24 7:25 ` [PATCH 9/13] less affine wakups Nick Piggin
2005-02-24 7:27 ` [PATCH 10/13] remove aggressive idle balancing Nick Piggin
2005-02-24 7:28 ` [PATCH 11/13] sched-domains aware balance-on-fork Nick Piggin
2005-02-24 7:28 ` [PATCH 12/13] schedstats additions for sched-balance-fork Nick Piggin
2005-02-24 7:30 ` [PATCH 13/13] basic tuning Nick Piggin
2005-02-24 8:46 ` [PATCH 12/13] schedstats additions for sched-balance-fork Ingo Molnar
2005-02-24 22:13 ` Nick Piggin
2005-02-25 11:07 ` Rick Lindsley
2005-02-25 11:21 ` Nick Piggin
2005-02-24 8:41 ` [PATCH 10/13] remove aggressive idle balancing Ingo Molnar
2005-02-24 12:13 ` Nick Piggin
2005-02-24 12:16 ` Ingo Molnar
2005-03-06 5:43 ` Siddha, Suresh B
2005-03-07 5:34 ` Nick Piggin
2005-03-07 8:04 ` Siddha, Suresh B
2005-03-07 8:28 ` Nick Piggin
2005-03-08 7:22 ` Siddha, Suresh B
2005-03-08 8:17 ` Nick Piggin
2005-03-08 19:36 ` Siddha, Suresh B [this message]
2005-02-24 8:39 ` [PATCH 7/13] better active balancing heuristic Ingo Molnar
2005-02-24 8:36 ` [PATCH 4/13] find_busiest_group fixlets Ingo Molnar
2005-02-24 8:07 ` [PATCH 3/13] rework schedstats Ingo Molnar
2005-02-25 10:50 ` Rick Lindsley
2005-02-25 11:10 ` Nick Piggin
2005-02-25 11:25 ` DHCP on multi homed host! Ravindra Nadgauda
2005-02-24 8:04 ` [PATCH 2/13] improve pinned task handling Ingo Molnar
2005-02-24 7:46 ` [PATCH 1/13] timestamp fixes Ingo Molnar
2005-02-24 7:56 ` Nick Piggin
2005-02-24 8:34 ` Ingo Molnar
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=20050308113630.A13045@unix-os.sc.intel.com \
--to=suresh.b.siddha@intel.com \
--cc=akpm@osdl.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=nickpiggin@yahoo.com.au \
/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
Powered by JetHome