From: "Siddha, Suresh B" <suresh.b.siddha@intel.com>
To: Christoph Lameter <clameter@sgi.com>
Cc: "Chen, Kenneth W" <kenneth.w.chen@intel.com>,
Ingo Molnar <mingo@elte.hu>,
"Siddha, Suresh B" <suresh.b.siddha@intel.com>,
akpm@osdl.org, mm-commits@vger.kernel.org,
nickpiggin@yahoo.com.au, linux-kernel@vger.kernel.org
Subject: Re: + sched-use-tasklet-to-call-balancing.patch added to -mm tree
Date: Fri, 10 Nov 2006 14:32:14 -0800 [thread overview]
Message-ID: <20061110143214.A25478@unix-os.sc.intel.com> (raw)
In-Reply-To: <Pine.LNX.4.64.0611101027100.25459@schroedinger.engr.sgi.com>; from clameter@sgi.com on Fri, Nov 10, 2006 at 10:50:13AM -0800
On Fri, Nov 10, 2006 at 10:50:13AM -0800, Christoph Lameter wrote:
> Suresh noted at the Intel OS forum yesterday that we may be able to avoid
> running load balancing of the larger sched domains from all processors.
> That would reduce the overhead of scheduling and reduce the percentage of
> time that load blancing is active even on very large systems.
I brought this up at OLS with Nick too. What happens today is, at a particular
domain, each cpu in the sched group will do a load balance at the frequency
of balance_interval. More the cores and threads, more the cpus will be
in each sched group at SMP and NUMA domain. And we endup spending
quite a bit of time doing load balancing in those domains.
One idea(old patch appended) is to make only one cpu in the sched group do
the load balance at that particular sched domain and this load will slowly
percolate down to the other cpus with in that group(when they do load balancing
at lower domains).
Nick was suggesting another alternative, that we should increase the max
interval and probably make it dependent on number of cpus that
share the group. Today for NUMA domain, we already set max_interval
based on online cpus. Perhaps we need to do that for other domains (SMP, MC)
too and increase the max interval on NUMA for big systems?
---
When busy, only the first cpu in the sched group will do the load balance.
--- linux-2.6.9/kernel/sched.c.1 2006-07-11 16:17:37.000000000 -0700
+++ linux-2.6.9/kernel/sched.c 2006-07-12 10:48:48.000000000 -0700
@@ -2329,12 +2329,15 @@
interval = 1;
if (j - sd->last_balance >= interval) {
- sd->last_balance += interval;
+ sd->last_balance = j;
if (load_balance(this_cpu, this_rq, sd, idle)) {
/* We've pulled tasks over so no longer idle */
idle = NOT_IDLE;
}
}
+
+ if (idle != IDLE && this_cpu != first_cpu(sd->span))
+ break;
}
}
#else
next prev parent reply other threads:[~2006-11-10 22:55 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <200611032205.kA3M5wmJ003178@shell0.pdx.osdl.net>
2006-11-07 7:32 ` + sched-use-tasklet-to-call-balancing.patch added to -mm tree Ingo Molnar
2006-11-07 17:44 ` Christoph Lameter
2006-11-07 17:31 ` Siddha, Suresh B
2006-11-07 17:55 ` Christoph Lameter
2006-11-07 17:50 ` Siddha, Suresh B
2006-11-07 18:18 ` Christoph Lameter
2006-11-07 19:17 ` Christoph Lameter
2006-11-07 20:31 ` Ingo Molnar
2006-11-07 20:59 ` Christoph Lameter
2006-11-07 21:35 ` Chen, Kenneth W
2006-11-07 21:49 ` Christoph Lameter
2006-11-10 6:18 ` Chen, Kenneth W
2006-11-10 18:50 ` Christoph Lameter
2006-11-10 21:38 ` Ingo Molnar
2006-11-11 1:01 ` Christoph Lameter
2006-11-11 2:05 ` Chen, Kenneth W
2006-11-11 2:51 ` Christoph Lameter
2006-11-13 4:03 ` Chen, Kenneth W
2006-11-13 5:44 ` Christoph Lameter
2006-11-13 6:40 ` Chen, Kenneth W
2006-11-14 1:06 ` [patch] sched domain: move sched group allocations to percpu area Siddha, Suresh B
2006-11-14 8:23 ` Ingo Molnar
2006-11-14 16:57 ` Christoph Lameter
2006-11-10 21:42 ` + sched-use-tasklet-to-call-balancing.patch added to -mm tree Ingo Molnar
2006-11-10 22:32 ` Siddha, Suresh B [this message]
2006-11-11 1:14 ` Christoph Lameter
2006-11-07 19:22 ` Christoph Lameter
2006-11-07 20:29 ` 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=20061110143214.A25478@unix-os.sc.intel.com \
--to=suresh.b.siddha@intel.com \
--cc=akpm@osdl.org \
--cc=clameter@sgi.com \
--cc=kenneth.w.chen@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=mm-commits@vger.kernel.org \
--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 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.