All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@elte.hu>
To: Satyam Sharma <satyam@infradead.org>
Cc: Daniel Walker <dwalker@mvista.com>,
	Roman Zippel <zippel@linux-m68k.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	peterz@infradead.org
Subject: Re: [ANNOUNCE/RFC] Really Fair Scheduler
Date: Sun, 2 Sep 2007 11:59:40 +0200	[thread overview]
Message-ID: <20070902095940.GA26138@elte.hu> (raw)
In-Reply-To: <alpine.LFD.0.999.0709021349290.22654@enigma.security.iitk.ac.in>


* Satyam Sharma <satyam@infradead.org> wrote:

> On Sun, 2 Sep 2007, Ingo Molnar wrote:
> > 
> > Although it _should_ have been a net code size win, because if you 
> > look at the diff you'll see that other useful things were removed as 
> > well: sleeper fairness, CPU time distribution smarts, tunings, 
> > scheduler instrumentation code, etc.
> 
> To be fair to Roman, he probably started development off an earlier 
> CFS, most probably 2.6.23-rc3-git1, if I guess correctly from his 
> original posting. So it's likely he missed out on some of the 
> tunings/comments(?) etc code that got merged after that.

actually, here are the rc3->rc5 changes to CFS:

 sched.c       |   89 ++++++++++++++++++++++++------------
 sched_debug.c |    3 -
 sched_fair.c  |  142 +++++++++++++++++++++++++++++++++++++++++++++-------------
 sched_rt.c    |   11 +++-
 4 files changed, 182 insertions(+), 63 deletions(-)

so since -rc3 CFS's size _increased_ (a bit).

and i just checked, the sched.o codesize still increases even when 
comparing rc4 against rc4+patch (his original patch) and there are no 
comments added by Roman's patch at all. (all the comments in 
sched_norm.c were inherited from sched_fair.c and none of the new code 
comes with comments - this can be seen in Daniel's rediffed patch.)

(and it's still not apples to oranges, for the reasons i outlined - so 
this whole comparison is unfair to CFS on several levels.)

also, note that CFS's modularity probably enabled Roman to do a fairly 
stable kernel/sched_norm.c (as most of the post-rc3 CFS changes were not 
to sched.c but to sched_fair.c) with easy porting. So with the CFS 
modular framework you can easily whip up and prototype a new scheduler 
and name it whatever you like. [ i expect the RCFS (Really Completely 
Fair Scheduler) patches to be posted to lkml any minute ;-) ]

> > It would be far more reviewable and objectively judgeable on an item 
> > by item basis if Roman posted the finegrained patches i asked for. 
> > (which patch series should be sorted in order of intrusiveness - 
> > i.e. leaving the harder changes to the end of the series.)
>
> Absolutely. And if there indeed are net improvements (be it for corner 
> cases) over latest CFS-rc5, while maintaining performance for the 
> common cases at the same time, well, that can only be a good thing.

yeah - and as i said to Roman, i like for example the use of a 
ready-queue instead of a run-queue. (but these are independent of the 
math changes, obviously.)

I also think that the core math changes should be split from the 
Breshenham optimizations. I.e. the Breshenham _fract code should be done 
as a "this improves performance and improves rounding, without changing 
behavior" add-on ontop of a fairly simple core math change. I think 
Roman will easily be able to do this with a few hours of effort which 
should present much reduced .text overhead in his next version of the 
patch, to demonstrate the simplicity of his implementation of the CFS 
fairness math - this really isnt hard to do.

	Ingo


  reply	other threads:[~2007-09-02 10:00 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-08-31  2:05 [ANNOUNCE/RFC] Really Fair Scheduler Roman Zippel
2007-08-31  9:36 ` Mike Galbraith
2007-08-31 13:22   ` Roman Zippel
2007-08-31 13:55     ` Mike Galbraith
2007-09-01  4:35     ` Mike Galbraith
2007-08-31 10:54 ` Ingo Molnar
2007-08-31 13:19   ` Roman Zippel
2007-09-02  9:26     ` Ingo Molnar
2007-09-03  2:58       ` Roman Zippel
2007-09-06  3:03         ` Syren Baran
2007-09-01  6:48   ` Roman Zippel
2007-09-02  2:19     ` Bill Davidsen
2007-09-02 17:02       ` Roman Zippel
2007-09-02  0:52 ` Daniel Walker
2007-09-02  7:20   ` Ingo Molnar
2007-09-02  8:40     ` Satyam Sharma
2007-09-02  9:59       ` Ingo Molnar [this message]
2007-09-02 15:16     ` Roman Zippel
2007-09-02 15:29       ` Ingo Molnar
2007-09-02 17:16         ` Roman Zippel
2007-09-02 19:21           ` Ingo Molnar
2007-09-07 15:35     ` Roman Zippel
2007-09-08  7:56       ` Mike Galbraith
2007-09-08  8:23         ` Mike Galbraith
2007-09-10 23:23         ` Roman Zippel
2007-09-11  6:18           ` Mike Galbraith
2007-09-11 11:28             ` Roman Zippel
2007-09-02 14:47   ` Roman Zippel
2007-09-02 15:00     ` Daniel Walker
2007-09-03 18:20       ` Roman Zippel
2007-09-03 21:06         ` Daniel Walker

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=20070902095940.GA26138@elte.hu \
    --to=mingo@elte.hu \
    --cc=dwalker@mvista.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=peterz@infradead.org \
    --cc=satyam@infradead.org \
    --cc=zippel@linux-m68k.org \
    /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.