lkml.org 
[lkml]   [2012]   [Jun]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 3/3] virtio-blk: Add bio-based IO path for virtio-blk
    On 06/20/2012 07:46 AM, Asias He wrote:
    > On 06/19/2012 02:21 PM, Dor Laor wrote:
    >> On 06/19/2012 05:51 AM, Asias He wrote:
    >>> On 06/18/2012 07:39 PM, Sasha Levin wrote:
    >>>> On Mon, 2012-06-18 at 14:14 +0300, Dor Laor wrote:
    >>>>> On 06/18/2012 01:05 PM, Rusty Russell wrote:
    >>>>>> On Mon, 18 Jun 2012 16:03:23 +0800, Asias He<asias@redhat.com> wrote:
    >>>>>>> On 06/18/2012 03:46 PM, Rusty Russell wrote:
    >>>>>>>> On Mon, 18 Jun 2012 14:53:10 +0800, Asias He<asias@redhat.com>
    >>>>>>>> wrote:
    >>>>>>>>> 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.
    >>>
    >>
    >> In this case, why don't you always recommend bio over request based?
    >
    > This case shows that IO scheduler's merging in guest saves a lot of
    > requests to host side. Why should I recommend bio over request based here?
    >

    Does it merge 20 request _on top_ of what event idx does? Of course if
    that's the case, we should keep that.

    Dor



    \
     
     \ /
      Last update: 2012-06-21 12:41    [W:0.027 / U:59.920 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site