lkml.org 
[lkml]   [2007]   [Feb]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: A quick fio test (was Re: [patch 00/13] Syslets, "Threadlets", generic AIO support, v3)
    On Tue, Feb 27 2007, Suparna Bhattacharya wrote:
    > > It's not bad for such a high depth/batch setting, but I still wonder why
    > > are results are so different. I'll look around for an x86 box with some
    > > TCQ/NCQ enabled storage attached for testing. Can you pass me your
    > > command line or job file (whatever you use) so we are on the same page?
    >
    > Sure - I used variations of the following job file (e.g. engine=syslet-rw,
    > iodepth=20000).
    >
    > Also the io scheduler on my system is set to Anticipatory by default.
    > FWIW it is a 4 way SMP (PIII, 700MHz)
    >
    > ; aio-stress -l -O -o3 <1GB file>
    > [global]
    > ioengine=libaio
    > buffered=0
    > rw=randread
    > bs=64k
    > size=1024m
    > directory=/kdump/suparna
    >
    > [testfile2]
    > iodepth=64
    > iodepth_batch=8

    Ok, now that I can run this on more than x86, I gave it a spin on a box
    with a little more potent storage. This is a core 2 quad, disks are
    7200rpm sata (with NCQ) and a 15krpm SCSI disk. IO scheduler is
    deadline.

    SATA disk:

    Engine Depth Batch Bw (KiB/sec)
    ----------------------------------------------------
    libaio 64 8 17,486
    syslet 64 8 17,357
    libaio 20000 8 17,625
    syslet 20000 8 16,526
    sync 1 1 7,529


    SCSI disk:

    Engine Depth Batch Bw (KiB/sec)
    ----------------------------------------------------
    libaio 64 8 20,723
    syslet 64 8 20,742
    libaio 20000 8 21,125
    syslet 20000 8 19,610
    sync 1 1 16,659


    > > > Engine Depth Batch Bw (KiB/sec)
    > > > ----------------------------------------------------
    > > > libaio 64 default 17,429
    > > > syslet 64 default 16,155
    > > > libaio 20000 default 15,494
    > > > syslet 20000 default 7,971
    > > >
    > > If iodepth_batch isn't set, the syslet queued io will be serialized and
    >
    > I see, so then this particular setting is not very meaningful

    Not if you want to take advantage of hw queuing, as in this random
    workload. fio being a test tool, it's important to be able to control as
    many aspects of what happens as possible. That means you can also do
    things that you do not want to do in real life, having a pending list of
    20000 serialized requests is indeed one of them. It also means you
    pretty much have to know what you are doing, when testing little details
    like this.

    --
    Jens Axboe

    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2007-02-28 09:49    [W:4.331 / U:0.380 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site