• A
    Implement an fd pool to get real AIO with posix-aio · 53538725
    aliguori 提交于
    This patch implements a simple fd pool to allow many AIO requests with
    posix-aio.  The result is significantly improved performance (identical to that
    reported for linux-aio) for both cache=on and cache=off.
    
    The fundamental problem with posix-aio is that it limits itself to one thread
    per-file descriptor.  I don't know why this is, but this patch provides a simple
    mechanism to work around this (duplicating the file descriptor).
    
    This isn't a great solution, but it seems like a reasonable intermediate step
    between posix-aio and a custom thread-pool to replace it.
    
    Ryan Harper will be posting some performance analysis he did comparing posix-aio
    with fd pooling against linux-aio.  The size of the posix-aio thread pool and
    the fd pool were largely determined by him based on this analysis.
    Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
    
    
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5323 c046a42c-6fe2-441c-8c8c-71466251a162
    53538725
block-raw-posix.c 32.3 KB