Thread (8 messages) 8 messages, 5 authors, 2012-07-30

Re: [PATCH V4 3/3] virtio-blk: Add bio-based IO path for virtio-blk

From: Rusty Russell <hidden>
Date: 2012-07-30 02:13:51
Also in: kvm, lkml

On Sun, 29 Jul 2012 14:11:15 +0300, "Michael S. Tsirkin" [off-list ref] wrote:
On Sat, Jul 28, 2012 at 10:21:05AM +0800, Asias He wrote:
quoted
This patch introduces bio-based IO path for virtio-blk.

Compared to request-based IO path, bio-based IO path uses driver
provided ->make_request_fn() method to bypasses the IO scheduler. It
handles the bio to device directly without allocating a request in block
layer. This reduces the IO path in guest kernel to achieve high IOPS
and lower latency. The downside is that guest can not use the IO
scheduler to merge and sort requests. However, this is not a big problem
if the backend disk in host side uses faster disk device.
If this optimization depends on the host, then it
should be reported to the guest using a feature bit,
as opposed to being guest driven.
I consider this approach a half-way step.  Quick attempts on my laptop
and I couldn't find a case where the bio path was a loss, but in theory
if the host wasn't doing any reordering and it was a slow device, you'd
want the guest to do so.

I'm not sure if current qemu can be configured to do such a thing?

Cheers,
Rusty.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help