From: Chuck Ebbert <cebbert@redhat.com>
To: "Siddha, Suresh B" <suresh.b.siddha@intel.com>
Cc: mingo@elte.hu, nickpiggin@yahoo.com.au,
linux-kernel@vger.kernel.org, akpm@linux-foundation.org
Subject: Re: [patch] sched: fix broken smt/mc optimizations with CFS
Date: Tue, 04 Sep 2007 19:35:21 -0400 [thread overview]
Message-ID: <46DDEBB9.3080501@redhat.com> (raw)
In-Reply-To: <20070828222718.GI1894@linux-os.sc.intel.com>
On 08/28/2007 06:27 PM, Siddha, Suresh B wrote:
> On Mon, Aug 27, 2007 at 12:31:03PM -0700, Siddha, Suresh B wrote:
>> Essentially I observed that nice 0 tasks still endup on two cores of same
>> package, with out getting spread out to two different packages. This behavior
>> is same with out this fix and this fix doesn't help in any way.
>
> Ingo, Appended patch seems to fix the issue and as far as I can test, seems ok
> to me.
>
> This is a quick fix for .23. Peter Williams and myself plan to look at
> code cleanups in this area (HT/MC optimizations) post .23
>
> BTW, with this fix, do you want to retain the current FUZZ value?
>
> thanks,
> suresh
> --
>
> Try to fix MC/HT scheduler optimization breakage again, with out breaking
> the FUZZ logic.
>
> First fix the check
> if (*imbalance + SCHED_LOAD_SCALE_FUZZ < busiest_load_per_task)
> with this
> if (*imbalance < busiest_load_per_task)
>
> As the current check is always false for nice 0 tasks (as SCHED_LOAD_SCALE_FUZZ
> is same as busiest_load_per_task for nice 0 tasks).
>
> With the above change, imbalance was getting reset to 0 in the corner case
> condition, making the FUZZ logic fail. Fix it by not corrupting the
> imbalance and change the imbalance, only when it finds that the
> HT/MC optimization is needed.
>
> Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
> ---
>
> diff --git a/kernel/sched.c b/kernel/sched.c
> index 9fe473a..03e5e8d 100644
> --- a/kernel/sched.c
> +++ b/kernel/sched.c
> @@ -2511,7 +2511,7 @@ group_next:
> * a think about bumping its value to force at least one task to be
> * moved
> */
> - if (*imbalance + SCHED_LOAD_SCALE_FUZZ < busiest_load_per_task) {
> + if (*imbalance < busiest_load_per_task) {
> unsigned long tmp, pwr_now, pwr_move;
> unsigned int imbn;
>
> @@ -2563,10 +2563,8 @@ small_imbalance:
> pwr_move /= SCHED_LOAD_SCALE;
>
> /* Move if we gain throughput */
> - if (pwr_move <= pwr_now)
> - goto out_balanced;
> -
> - *imbalance = busiest_load_per_task;
> + if (pwr_move > pwr_now)
> + *imbalance = busiest_load_per_task;
> }
>
> return busiest;
Seems this didn't get merged? Latest git as of today still has the code
as it was before this patch.
next prev parent reply other threads:[~2007-09-04 23:36 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-08-16 1:01 [patch] sched: fix broken smt/mc optimizations with CFS Siddha, Suresh B
2007-08-23 10:38 ` Ingo Molnar
2007-08-23 11:54 ` Ingo Molnar
2007-08-23 12:13 ` Ingo Molnar
2007-08-23 17:42 ` Daniel Walker
2007-08-27 19:19 ` Siddha, Suresh B
2007-08-27 19:23 ` Ingo Molnar
2007-08-27 19:31 ` Siddha, Suresh B
2007-08-28 22:27 ` Siddha, Suresh B
2007-08-29 3:42 ` Ingo Molnar
2007-09-04 23:35 ` Chuck Ebbert [this message]
2007-09-04 23:46 ` Siddha, Suresh B
2007-09-05 10:51 ` Ingo Molnar
2007-08-27 16:32 ` Torsten Kaiser
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=46DDEBB9.3080501@redhat.com \
--to=cebbert@redhat.com \
--cc=akpm@linux-foundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=nickpiggin@yahoo.com.au \
--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.