[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v6 0/3] linux-aio: introduce submit I/O as a batch
From: |
Ming Lei |
Subject: |
[Qemu-devel] [PATCH v6 0/3] linux-aio: introduce submit I/O as a batch |
Date: |
Fri, 4 Jul 2014 18:04:32 +0800 |
Hi,
The commit 580b6b2aa2(dataplane: use the QEMU block layer for I/O)
introduces ~40% throughput regression on virtio-blk dataplane, and
one of causes is that submitting I/O as a batch is removed.
This patchset trys to introduce this mechanism on block, at least,
linux-aio can benefit from that.
With these patches, it is observed that thoughout on virtio-blk
dataplane can be improved a lot, see data in commit log of patch
3/3.
It should be possible to apply the batch mechanism to other devices
(such as virtio-scsi) too.
TODO:
- support queuing I/O to multi files for scsi devies, which
need some changes to linux-aio
V6:
- fix requests leak if part of them arn't submitted successfully,
pointed by Stefan
- linux-aio.c coding style fix
V5:
- rebase on v2.1.0-rc0 of qemu.git/master
- block/linux-aio.c code style fix
- don't flush io queue before flush, pointed by Paolo
V4:
- support other non-raw formats with under-optimized performance
- use reference counter for plug & unplug
- flush io queue before sending flush command
V3:
- only support submitting I/O as a batch for raw format, pointed by
Kevin
V2:
- define return value of bdrv_io_unplug as void, suggested by Paolo
- avoid busy-wait for handling io_submit
V1:
- move queuing io stuff into linux-aio.c as suggested by Paolo
Thanks,
--
Ming Lei
- [Qemu-devel] [PATCH v6 0/3] linux-aio: introduce submit I/O as a batch,
Ming Lei <=