aio: implement request batching
authorJeff Moyer <jmoyer@redhat.com>
Fri, 2 Oct 2009 22:57:36 +0000 (18:57 -0400)
committerJens Axboe <jens.axboe@oracle.com>
Wed, 28 Oct 2009 08:29:25 +0000 (09:29 +0100)
commitcfb1e33eed48165763edc7a4a067cf5f74898d0b
treed0e0bdd0664615b1f7be6cf770476e16dbcad116
parent1af60fbd759d31f565552fea315c2033947cfbe6
aio: implement request batching

Hi,

Some workloads issue batches of small I/O, and the performance is poor
due to the call to blk_run_address_space for every single iocb.  Nathan
Roberts pointed this out, and suggested that by deferring this call
until all I/Os in the iocb array are submitted to the block layer, we
can realize some impressive performance gains (up to 30% for sequential
4k reads in batches of 16).

Signed-off-by: Jeff Moyer <jmoyer@redhat.com>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
fs/aio.c
fs/direct-io.c