lkml.org 
[lkml]   [2011]   [Jan]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    SubjectRe: Who does determine the number of requests that can be serving simultaneously in a storage?
    From
    On Fri, Jan 7, 2011 at 8:10 AM, Jens Axboe <axboe@kernel.dk> wrote:
    >
    > Please don't top-post, thanks.

    I am really sorry for that.

    >
    > On 2011-01-07 14:00, Yuehai Xu wrote:
    >> I add a tracepoint so that I can get nr_sorted and in_flight[0/1] of
    >> request_queue when request is completed, I consider nr_sorted as the
    >> number of pending requests and in_flight[0/1] represent the number
    >> serving in the storage. Does these two parameters stand for what I
    >> mean?
    >
    > nr_sorted is the number of requests that reside in the IO scheduler.
    > That means requests that are not on the dispatch list yet. in_flight is
    > the number that the driver is currently handling. So I think your
    > understanding is correct.
    >
    > If you look at where you added your trace point, there are already a
    > trace point right there. I would recommend that you use blktrace, and
    > then use btt to parse it. That will give you all sorts of queueing
    > information.

    Yes, but I notice that the original traces can't get nr_sorted and
    in_flight[0/1] directly, so I just add few lines. The result is from
    the blktrace, and I use blkparse to analysis it, it should be the same
    as what you said about btt(I don't know it, sorry about that).

    >
    >> The test benchmark I use is postmark which simulates the email server
    >> system, over 90% requests are small random write. The storage is Intel
    >> M SSD. Generally, I think the number of in_flight[0/1] should be much
    >> greater than 1, but the result shows that this value is almost 1 no
    >> matter what I/O scheduler(CFQ/DEADLINE/NOOP) or
    >> filesystem(EXT4/EXT3/BTRFS) it is. Is it normal?
    >
    > Depends, do you have more requests pending in the IO scheduler? I'm
    > assuming you already verified that NCQ is active and working for your
    > drive.
    >

    Yes, the nr_sorted(num of pending requests) remains around 100. hdparm
    shows that the NCQ has been enabled.

    Thanks,
    Yuehai


    \
     
     \ /
      Last update: 2011-01-07 14:25    [W:0.022 / U:29.256 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site