All of lore.kernel.org
 help / color / mirror / Atom feed
From: Nick Piggin <nickpiggin@yahoo.com.au>
To: "Siddha, Suresh B" <suresh.b.siddha@intel.com>
Cc: mingo@elte.hu, akpm@osdl.org, linux-kernel@vger.kernel.org
Subject: Re: [patch] sched: fix sched domain degenerate
Date: Sat, 16 Apr 2005 11:43:38 +1000	[thread overview]
Message-ID: <42606DCA.8050602@yahoo.com.au> (raw)
In-Reply-To: <20050415163633.C7296@unix-os.sc.intel.com>

Siddha, Suresh B wrote:
> On Fri, Apr 15, 2005 at 11:03:20PM +1000, Nick Piggin wrote:
> 
>>Index: linux-2.6/kernel/sched.c
>>===================================================================
>>--- linux-2.6.orig/kernel/sched.c	2005-04-15 22:52:25.000000000 +1000
>>+++ linux-2.6/kernel/sched.c	2005-04-15 22:58:54.000000000 +1000
>>@@ -4844,7 +4844,14 @@ static int __devinit sd_parent_degenerat
>> 	/* WAKE_BALANCE is a subset of WAKE_AFFINE */
>> 	if (cflags & SD_WAKE_AFFINE)
>> 		pflags &= ~SD_WAKE_BALANCE;
>>-	if ((~sd->flags) & parent->flags)
>>+	/* Flags needing groups don't count if only 1 group in parent */
>>+	if (parent->groups == parent->groups->next) {
>>+		pflags &= ~(SD_LOAD_BALANCE |
>>+				SD_BALANCE_NEWIDLE |
>>+				SD_BALANCE_FORK |
>>+				SD_BALANCE_EXEC);
>>+	}
> 
> 
> This patch works fine and I like this fix. But should n't we be adding 
> SD_WAKE_AFFINE and SD_WAKE_BALANCE to this list?
> 

Hmm, well they don't use groups, but I guess they can be excluded,
because if the parent span is the same as the child span (and that
is true at this point), then SD_WAKE_AFFFINE/BALANCE in the parent
will never be executed. Good point.

wake_idle should be doing a similar thing too, but that needs a bit
of work.

> And about SD_BALANCE_FORK, now that we have multi level sbe/sbf, we should 
> add this flag to SD_CPU/SIBLING_INIT too..
> 

I guess we should think about it. It depends - does SD_BALANCE_FORK
make sense on a plain SMP machine? If so, then it probably makes
sense to be in the 'SMP' domain on a NUMA system, otherwise not.

I suspect that for BALANCE_FORK, the answer may be no. On an SMP, it
is far less disastrous to misplace tasks and have them picked up by
the periodic rebalancer. What's more, BALANCE_FORK does add a non
trivial overhead when moving tasks to other CPUs.

But it's open for debate. I haven't done comprehensive tests.

-- 
SUSE Labs, Novell Inc.


      reply	other threads:[~2005-04-16  1:43 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-04-14  2:26 [patch] sched: fix sched domain degenerate Siddha, Suresh B
2005-04-15 13:03 ` Nick Piggin
2005-04-15 23:36   ` Siddha, Suresh B
2005-04-16  1:43     ` Nick Piggin [this message]

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=42606DCA.8050602@yahoo.com.au \
    --to=nickpiggin@yahoo.com.au \
    --cc=akpm@osdl.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=suresh.b.siddha@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.