[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20070902072029.GA24427@elte.hu>
Date: Sun, 2 Sep 2007 09:20:29 +0200
From: Ingo Molnar <mingo@...e.hu>
To: Daniel Walker <dwalker@...sta.com>
Cc: Roman Zippel <zippel@...ux-m68k.org>, linux-kernel@...r.kernel.org,
peterz@...radead.org
Subject: Re: [ANNOUNCE/RFC] Really Fair Scheduler
* Daniel Walker <dwalker@...sta.com> wrote:
> The the patch is near the end of this email.. The most notable thing
> about the rediff is the line count,
>
> 4 files changed, 323 insertions(+), 729 deletions(-)
>
> That's impressive (assuming my rediff is correct). [...]
Yeah, at first glance i liked that too, then i looked into the diff and
noticed that a good chunk of the removal "win" comes from the removal of
~35 comment blocks while adding new code that has no comments at all
(!).
And if you look at the resulting code size/complexity, it actually
increases with Roman's patch (UP, nodebug, x86):
text data bss dec hex filename
13420 228 1204 14852 3a04 sched.o.rc5
13554 228 1228 15010 3aa2 sched.o.rc5-roman
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.
> I also ran hackbench (in a haphazard way) a few times on it vs. CFS in
> my tree, and RFS was faster to some degree (it varied)..
here are some actual numbers for "hackbench 50" on -rc5, 10 consecutive
runs fresh after bootup, Core2Duo, UP:
-rc5(cfs) -rc5+rfs
-------------------------------
Time: 3.905 Time: 4.259
Time: 3.962 Time: 4.190
Time: 3.981 Time: 4.241
Time: 3.986 Time: 3.937
Time: 3.984 Time: 4.120
Time: 4.001 Time: 4.013
Time: 3.980 Time: 4.248
Time: 3.983 Time: 3.961
Time: 3.989 Time: 4.345
Time: 3.981 Time: 4.294
-------------------------------
Avg: 3.975 Avg: 4.160 (+4.6%)
Fluct: 0.138 Fluct: 1.671
so unmodified CFS is 4.6% faster on this box than with Roman's patch and
it's also more consistent/stable (10 times lower fluctuations).
At lower hackbench levels (hackbench 10) the numbers are closer - that
could be what you saw.
But, this measurement too is apples to oranges, given the amount of
useful code the patch removes - fact is that you can always speed up the
scheduler by removing stuff, just run hackbench as SCHED_FIFO (via "chrt
-f 90 ./hackbench 50") to see what a minimal scheduler can do.
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.)
Ingo
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists