From: "Li, Tong N" <tong.n.li@intel.com>
To: Ingo Molnar <mingo@elte.hu>
Cc: linux-kernel@vger.kernel.org, Chris Snook <csnook@redhat.com>
Subject: Re: [RFC] scheduler: improve SMP fairness in CFS
Date: Wed, 25 Jul 2007 11:20:05 -0700 [thread overview]
Message-ID: <1185387605.14095.16.camel@tongli.jf.intel.com> (raw)
In-Reply-To: <20070725120358.GA30755@elte.hu>
On Wed, 2007-07-25 at 14:03 +0200, Ingo Molnar wrote:
> Signed-off-by: Ingo Molnar <mingo@elte.hu>
> ---
> include/linux/sched.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> Index: linux/include/linux/sched.h
> ===================================================================
> --- linux.orig/include/linux/sched.h
> +++ linux/include/linux/sched.h
> @@ -681,7 +681,7 @@ enum cpu_idle_type {
> #define SCHED_LOAD_SHIFT 10
> #define SCHED_LOAD_SCALE (1L << SCHED_LOAD_SHIFT)
>
> -#define SCHED_LOAD_SCALE_FUZZ (SCHED_LOAD_SCALE >> 5)
> +#define SCHED_LOAD_SCALE_FUZZ (SCHED_LOAD_SCALE >> 1)
>
> #ifdef CONFIG_SMP
> #define SD_LOAD_BALANCE 1 /* Do load balancing on this domain. */
Hi Ingo,
The problem I see is that the current load balancing code is quite
hueristic and can be quite inaccurate sometimes. Its goal is to maintain
roughly equal load on each core, where load is defined to be the sum of
the weights of all tasks on a core. If all tasks have the same weight,
this is a simple problem. If different weights exist, this is an NP-hard
problem and our current hueristic can perform badly under various
workloads. A simple example, if we have four tasks on two cores and they
have weights 1, 5, 7, 7. The balanced partition would have 1 and 7 on
core 1 and 5 and 7 on core 2. But you can see the load isn't evenly
distributed; in fact, it's not possible to evenly distribute the load in
this case. Thus, my opinion is that only balancing the load as we do now
is not enough to achieve SMP fairness. My patch was intended to address
this problem.
tong
PS. I now have a lockless implementation of my patch. Will post later
today.
next prev parent reply other threads:[~2007-07-25 18:20 UTC|newest]
Thread overview: 45+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-07-23 18:38 Tong Li
2007-07-23 20:00 ` Andi Kleen
2007-07-23 21:10 ` Li, Tong N
2007-07-23 21:25 ` Chris Friesen
2007-07-24 9:43 ` Andi Kleen
2007-07-23 23:40 ` Chris Snook
2007-07-24 8:07 ` Chris Snook
2007-07-24 17:11 ` Li, Tong N
2007-07-24 17:07 ` Tong Li
2007-07-24 18:08 ` Chris Snook
2007-07-24 19:47 ` Chris Friesen
2007-07-24 20:39 ` Chris Snook
2007-07-24 20:58 ` Li, Tong N
2007-07-24 21:09 ` Chris Snook
2007-07-24 21:23 ` Chris Friesen
2007-07-24 21:45 ` Chris Snook
2007-07-24 23:33 ` Chris Friesen
2007-07-24 21:06 ` Bill Huey
2007-07-24 21:22 ` Chris Snook
2007-07-24 23:14 ` Bill Huey
2007-07-24 21:12 ` Chris Friesen
2007-07-25 11:01 ` Ingo Molnar
2007-07-25 12:03 ` Ingo Molnar
2007-07-25 17:23 ` Tong Li
2007-07-25 19:24 ` Ingo Molnar
2007-07-25 20:38 ` Chris Friesen
2007-07-25 20:55 ` Chris Snook
2007-07-25 21:15 ` Li, Tong N
2007-07-25 22:24 ` Chris Snook
2007-07-26 19:00 ` Tong Li
2007-07-26 21:31 ` Ingo Molnar
2007-07-26 22:00 ` Li, Tong N
2007-07-27 1:34 ` Tong Li
2007-07-27 17:16 ` Chris Snook
2007-07-27 19:03 ` Tong Li
2007-07-27 22:20 ` Bill Huey
2007-07-27 23:36 ` Chris Snook
2007-07-28 0:54 ` Bill Huey
2007-07-28 2:59 ` Chris Snook
2007-07-28 19:38 ` Tong Li
2007-07-29 2:40 ` Chris Snook
2007-07-28 19:23 ` Tong Li
2007-07-29 3:01 ` Chris Snook
2007-07-25 18:20 ` Li, Tong N [this message]
2007-07-25 19:18 ` 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=1185387605.14095.16.camel@tongli.jf.intel.com \
--to=tong.n.li@intel.com \
--cc=csnook@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
/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
all inboxes | Powered by JetHome®