Re: [PATCH 5/15] cfq-iosched: speed up rbtree handling

From: Alan D. Brunelle
Date: Thu Apr 26 2007 - 10:28:49 EST


Jens Axboe wrote:
On Wed, Apr 25 2007, Jens Axboe wrote:
On Wed, Apr 25 2007, Jens Axboe wrote:
On Wed, Apr 25 2007, Alan D. Brunelle wrote:
Hi Jens -

The attached patch speeds it up even more - I'm finding a >9% reduction in %system with no loss in IO performance. This just sets the cached element when the first is looked for.
Interesting, good thinking. It should not change the IO pattern, as the
end result should be the same. Thanks Alan, will commit!

I'll give elevator.c the same treatment, should be even more beneficial.
Stay tuned for a test patch.
Something like this, totally untested (it compiles). I initially wanted
to fold the cfq addon into the elevator.h provided implementation, but
that requires more extensive changes. Given how little code it is, I
think I'll keep them seperate.

Booted, seems to work fine for me. In a null ended IO test, I get about
a 1-2% speedup for a single queue of depth 64 using libaio. So it's
definitely worth it, will commit.

After longer runs last night, I think the patched elevator code /does/ help (albeit ever so slightly - about 0.6% performance improvement at a 1.1% %system overhead).

rkB_s %system Kernel
--------- ------- ----------------------------------------------------
1022942.2 3.69 Original patch + fix to cfq_rb_first
1029087.0 3.73 This patch stream (including fixes to elevator code)

Alan



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/