Re: [ANNOUNCE/RFC] Really Fair Scheduler

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


* Daniel Walker <[email protected]> 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.)

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at
Please read the FAQ at

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux