On Wed, Apr 25 2007, Jens Axboe wrote: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).On Wed, Apr 25 2007, Jens Axboe wrote:On Wed, Apr 25 2007, Alan D. Brunelle wrote:Something like this, totally untested (it compiles). I initially wantedHi Jens -Interesting, good thinking. It should not change the IO pattern, as the
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.
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.
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.