Thread (33 messages) 33 messages, 9 authors, 2012-07-04

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

From: Asias He <hidden>
Date: 2012-06-19 02:50:01
Also in: kvm, lkml

On 06/18/2012 07:39 PM, Sasha Levin wrote:
On Mon, 2012-06-18 at 14:14 +0300, Dor Laor wrote:
quoted
On 06/18/2012 01:05 PM, Rusty Russell wrote:
quoted
On Mon, 18 Jun 2012 16:03:23 +0800, Asias He[off-list ref]  wrote:
quoted
On 06/18/2012 03:46 PM, Rusty Russell wrote:
quoted
On Mon, 18 Jun 2012 14:53:10 +0800, Asias He[off-list ref]  wrote:
quoted
This patch introduces bio-based IO path for virtio-blk.
Why make it optional?
request-based IO path is useful for users who do not want to bypass the
IO scheduler in guest kernel, e.g. users using spinning disk. For users
using fast disk device, e.g. SSD device, they can use bio-based IO path.
Users using a spinning disk still get IO scheduling in the host though.
What benefit is there in doing it in the guest as well?
The io scheduler waits for requests to merge and thus batch IOs
together. It's not important w.r.t spinning disks since the host can do
it but it causes much less vmexits which is the key issue for VMs.
Is the amount of exits caused by virtio-blk significant at all with
EVENT_IDX?
Yes. EVENT_IDX saves the number of notify and interrupt. Let's take the 
interrupt as an example, The guest fires 200K request to host, the 
number of interrupt is about 6K thanks to EVENT_IDX. The ratio is 200K / 
6K = 33. The ratio of merging is 40000K / 200K = 20.

-- 
Asias
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help