On Mon, Dec 03 2012, Kent Overstreet wrote:
> Last posting: http://thread.gmane.org/gmane.linux.kernel.aio.general/3169
> 
> Changes since the last posting should all be noted in the individual
> patch descriptions.
> 
>  * Zach pointed out the aio_read_evt() patch was calling functions that
>    could sleep in TASK_INTERRUPTIBLE state, that patch is rewritten.
>  * Ben pointed out some synchronize_rcu() usage was problematic,
>    converted it to call_rcu()
>  * The flush_dcache_page() patch is new
>  * Changed the "use cancellation list lazily" patch so as to remove
>    ki_flags from struct kiocb.

Kent, I ran a few tests, and the below patches still don't seem as fast
as the approach I took. To keep it fair, I used your aio branch and
applied by dio speedups too. As a sanity check, I ran with your branch
alone as well. The quick results below - kaio is kent-aio, just your
branch. kaio-dio is with the direct IO speedups too. jaio is my branch,
which already has the dio changes too.

Devices         Branch          IOPS
1               kaio            ~915K
1               kaio-dio        ~930K
1               jaio           ~1220K
6               kaio           ~3050K
6               kaio-dio       ~3080K
6               jaio            3500K

The box runs out of CPU driving power, which is why it doesn't scale
linearly, otherwise I know that jaio at least does. It's basically
completion limited for the 6 device test at the moment.

I'll run some profiling tomorrow morning and get you some better
results. Just thought I'd share these at least.

-- 
Jens Axboe

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

Reply via email to