mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "Li, Tong N" <tong.n.li@intel.com>
To: vatsa@in.ibm.com
Cc: William Lee Irwin III <wli@holomorphy.com>,
	Damien Wyart <damien.wyart@free.fr>, Ingo Molnar <mingo@elte.hu>,
	linux-kernel@vger.kernel.org, torvalds@linux-foundation.org
Subject: Re: [patch] CFS scheduler, -v8
Date: Mon, 7 May 2007 13:54:04 -0700	[thread overview]
Message-ID: <1178571244.3283.31.camel@tongli.jf.intel.com> (raw)
In-Reply-To: <20070507142257.GA633@in.ibm.com>

On Mon, 2007-05-07 at 19:52 +0530, Srivatsa Vaddagiri wrote:
> On Thu, May 03, 2007 at 08:53:47AM -0700, William Lee Irwin III wrote:
> > On Thu, May 03, 2007 at 08:23:18PM +0530, Srivatsa Vaddagiri wrote:
> > > And what about group scheduling extensions? Do you have plans to work on
> > > it? I was begining to work on a prototype to do group scheduling based
> > > on CFS, basically on the lines of what you and Linus had outlined
> > > earlier:
> > > 	http://lkml.org/lkml/2007/4/18/271
> > > 	http://lkml.org/lkml/2007/4/18/244
> > 
> > Tong Li's Trio scheduler does a bit of this, though it doesn't seem to
> > have the mindshare cfs seems to have acquired.
> > 
> > The hyperlink seems to have broken, though:
> > 	http://www.cs.duke.edu/~tongli/linux/linux-2.6.19.2-trio.patch
> 
> The big question I have is, how well does DWRR fits into the "currently hot" 
> scheduling frameworks like CFS? For ex: if the goal is to do
> fair (group) scheduling of SCHED_NORMAL tasks, can CFS and DWRR co-exist?
> Both seem to be radically different algorithms and my initial impressions 
> of them co-existing is "No", but would be glad to be corrected if I am
> wrong. If they can't co-exist, then we need a different way of doing
> group scheduling on top of CFS, as that is gaining more popularity on
> account of better handling of interactivity.

Yeah, the intent of DWRR was to provide proportional fairness and rely
on the underlying scheduler to support interactivity. In a way, DWRR
ensures that each task receives its fair share, while the underlying
scheduler determines the right order to run the tasks. Since SD is
structurally similar to the stock scheduler, DWRR should co-exist with
it easily. Co-existing with CFS requires more work, but I think the
round-robin mechanism in DWRR could be applicable to CFS to facilitate
cross-processor fairness.

> Tong,
> 	I understand a center hallmark of DWRR is SMP fairness.
> Have you considered how bad/good the other alternative to achieve SMP fairness 
> which is in vogue today : pressure/weight based balancing (ex: smpnice and 
> CKRM CPU scheduler - ckrm.sourceforge.net/downloads/ckrm-ols03-slides.pdf)?
> 

The disadvantage of DWRR is its potential overhead and the advantage is
it can provide stronger fairness. If we have 2 processors and 3 tasks,
DWRR ensures that each task gets 66% of the total CPU time, while
smpnice would keep two tasks on the same processor and the third one on
another. I did an analysis and showed that the lag bound of DWRR is
constant if task weights are bounded by a constant. On the other hand,
the cost DWRR pays is that it requires more task migrations. I tested
with a set of benchmarks on an SMP and didn't see migrations were
causing much performance impact, but this is certainly a big issue for
NUMA.

  tong

PS. I'm now porting the code to the latest kernel and will post as soon
as I'm done.

  reply	other threads:[~2007-05-07 20:54 UTC|newest]

Thread overview: 75+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-05-03  8:20 Zoltan Boszormenyi
2007-05-03 13:02 ` Ingo Molnar
2007-05-03 13:29   ` Damien Wyart
2007-05-03 14:53     ` Srivatsa Vaddagiri
2007-05-03 15:53       ` William Lee Irwin III
2007-05-03 18:44         ` Li, Tong N
2007-05-03 19:52           ` William Lee Irwin III
2007-05-07 14:22         ` Srivatsa Vaddagiri
2007-05-07 20:54           ` Li, Tong N [this message]
2007-05-07  0:04     ` Bill Davidsen
  -- strict thread matches above, loose matches on Subject: below --
2007-05-01 21:22 Ingo Molnar
2007-05-02  2:57 ` Ting Yang
2007-05-02  5:10   ` Willy Tarreau
2007-05-02  5:30   ` William Lee Irwin III
2007-05-02 10:05   ` Bill Huey
2007-05-02 10:27   ` Ingo Molnar
2007-05-02 17:36   ` Srivatsa Vaddagiri
2007-05-02 17:48     ` William Lee Irwin III
2007-05-02 18:15       ` Ingo Molnar
2007-05-02 18:56         ` William Lee Irwin III
2007-05-02 19:12           ` Ingo Molnar
2007-05-02 19:42             ` William Lee Irwin III
2007-05-03  2:48       ` Ting Yang
2007-05-03  3:18       ` Ting Yang
2007-05-03 10:19         ` Bill Huey
2007-05-02 23:41     ` Ting Yang
2007-05-02 18:42   ` Li, Tong N
2007-05-02 19:10     ` William Lee Irwin III
2007-05-03  3:07     ` Ting Yang
2007-05-03  8:50   ` Ingo Molnar
2007-05-03 14:26     ` Srivatsa Vaddagiri
2007-05-03 15:19       ` Ting Yang
2007-05-03 15:02     ` Ting Yang
2007-05-02  6:37 ` Mike Galbraith
2007-05-02  6:45   ` Ingo Molnar
2007-05-02  8:03   ` Gene Heskett
2007-05-02  8:12     ` Mike Galbraith
2007-05-02  8:48       ` Gene Heskett
2007-05-02  8:13     ` Ingo Molnar
2007-05-02  8:51       ` Gene Heskett
2007-05-02  7:59 ` Mike Galbraith
2007-05-02  8:11   ` Gene Heskett
2007-05-02 10:40   ` Ingo Molnar
2007-05-02  9:08 ` Balbir Singh
2007-05-02 10:05   ` Ingo Molnar
2007-05-02 10:59     ` Balbir Singh
2007-05-02 11:17       ` Ingo Molnar
2007-05-05  8:31         ` Esben Nielsen
2007-05-05 17:44           ` Linus Torvalds
2007-05-06  8:29             ` Ingo Molnar
2007-05-06  8:36               ` Willy Tarreau
2007-05-06  8:52                 ` Ingo Molnar
2007-05-06 17:45               ` Linus Torvalds
2007-05-07 11:30                 ` Esben Nielsen
2007-05-07 15:55                   ` Ingo Molnar
2007-05-07 16:11                   ` Linus Torvalds
2007-05-08  0:35                   ` Peter Williams
2007-05-08  9:05                     ` Esben Nielsen
2007-05-09  0:01                       ` Peter Williams
2007-05-10 13:09                     ` Pavel Machek
2007-05-11 16:50                       ` Linus Torvalds
2007-05-11 19:18                         ` Pavel Machek
2007-05-11 19:37                           ` Willy Tarreau
2007-05-11 20:53                             ` Kevin Bowling
2007-05-07 11:09             ` Esben Nielsen
2007-05-07 16:28               ` Linus Torvalds
2007-05-07 18:39                 ` Johannes Stezenbach
2007-05-07 18:55                   ` Linus Torvalds
2007-05-08  7:34                   ` Esben Nielsen
2007-05-08  9:54                     ` Johannes Stezenbach
2007-05-08 10:27                       ` Esben Nielsen
2007-05-08  5:36                 ` Matt Mackall
2007-05-02 12:58 ` Mark Lord
2007-05-02 12:58 ` Vegard Nossum
2007-05-02 16:41   ` 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=1178571244.3283.31.camel@tongli.jf.intel.com \
    --to=tong.n.li@intel.com \
    --cc=damien.wyart@free.fr \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=torvalds@linux-foundation.org \
    --cc=vatsa@in.ibm.com \
    --cc=wli@holomorphy.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 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®