lkml.org 
[lkml]   [2010]   [Jan]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    SubjectRe: [PATCH] cfq-iosched: non-rot devices do not need read queue merging
    From
    Hi Kirill,
    NCQ is actually measured, so it is reliable.
    Rotational can be wrong, but you can write to it (e.g. at machine
    startup) to obtain better handling of your disks.
    I am also a fan of auto-tuning, and trying to achieve it in cfq, but
    it is kind of complex, since there are many factors, and some of them
    aren't modeled by cfq currently.
    An example is that, on cheap SSDs or flash cards, small writes are far
    slower than anything else (they can take up to 0.5s), while a read
    will usually take less than 1ms. Currently, CFQ has no way to handle
    this extreme situation, since it uses just one idle value (8ms) for
    all transitions.

    Corrado

    On 1/7/10, Kirill Afonshin <kirill_nnov@mail.ru> wrote:
    > I think we should not rely on NCQ/non-NCQ or blk_queue_nonrot() because it
    > may be incorrect:
    > try this:
    >
    > find /sys/ -name rotational 2>/dev/null
    > find /sys/ -name rotational 2>/dev/null|xargs cat
    >
    > all devices are reported as rotational for me including ram, loop and usb
    > flash drive. Physical block size and optimal io size has invalid values for
    > all my usb flash drives.
    >
    > I think it would be better to do a short performance test before mount. It
    > will provide all necessary information for io scheduler. We doesn't need
    > information about NCQ and rotational. We need to predict how much time
    > specific io operation will take in current context.
    >
    > PS: I'm not native speaker.
    >
    > Best regards,
    > Kirill Afonshin
    >


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