Re: FIO does 2x IOPS with 'bssplit' option and 'rw=randwrite or rw=randread'

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Thank you, Yes. when I remove “rate_process=poisson”, the IOPS are down to about 85% - 90%. 

I checked with rate_iops=100 and rate_iops=1000. In both cases, I got 85%-90% of rate_iops given. 

How do I accomplish 100% of IOPS?

Thanks
+GV

On 4/6/17, 2:13 AM, "Srinivasa Chamarthy" <chamarthy.raju@xxxxxxxxx> wrote:

    Could you remove rate_process=poisson and try, with the same profile
    without rate_poisson, i am getting a bit less than 100 IOPS expected.
    
    # fio -name=rate
    --filename=/dev/mapper/3600601602d003e0002cde5580011c8fb
    --ioengine=libaio --direct=1 --fill_device=1 --group_reporting
    --rw=randwrite --rate_iops=100 --iodepth=8 --norandommap
    --bsrange=8k-16k --
    bssplit=8k/90:16k/10
    
    avg-cpu:  %user   %nice %system %iowait  %steal   %idle
               0.25    0.00    0.38    1.13    0.00   98.24
    
    Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s
    avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
    dm-18             0.00     0.00    0.00   91.00     0.00   800.00
    17.58     0.38    4.20    0.00    4.20   3.96  36.00
    
    --
    Srinivasa R Chamarthy
    
    
    On Thu, Apr 6, 2017 at 12:09 AM, GV Govindasamy
    <gv.govindasamy@xxxxxxxxxxx> wrote:
    >
    > Hello All
    >
    > I would like to know what I observe is a bug or by design that I don't understand. I expect to generate 100 random read ops or 100 random write ops in the following examples with 90% 8k and 10% 16k. FIO also appears to target  for 100 IOPS, but ended up doing 2x in actual workload.
    >
    > Thanks,
    > +GV
    >
    > =============================================
    > $ ./fio-2.19 --version (compiled with: ./configure --build-static; make on CentOS release 6.7/3.10.0-229)
    > fio-2.19
    >
    > =============================================
    > $ cat output/fio/bssplit_readtest.fio
    > [global]
    > ioengine=libaio
    > direct=1
    > time_based
    > norandommap
    > group_reporting
    > disk_util=0
    > continue_on_error=all
    > rate_process=poisson
    >
    >
    > [db-oltp-w]
    > bssplit=8k/90:16k/10,,
    > size=128G
    > filename=/dev/sdg
    > rw=randread
    > iodepth=8
    > rate_iops=100
    >
    > =========================================
    > $ iostat -x 2 sdg
    >
    > avg-cpu:  %user   %nice %system %iowait  %steal   %idle
    >            0.13    0.00    0.13    1.63    0.00   98.12
    > Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
    > sdg               0.00     0.00  191.00    0.00  3392.00     0.00    17.76     0.09    0.45    0.45    0.00   0.41   7.75
    >
    > avg-cpu:  %user   %nice %system %iowait  %steal   %idle
    >            0.25    0.00    0.25    1.75    0.00   97.74
    > Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
    > sdg               0.00     0.00  193.00    0.00  3424.00     0.00    17.74     0.08    0.42    0.42    0.00   0.39   7.50
    >
    > avg-cpu:  %user   %nice %system %iowait  %steal   %idle
    >            0.13    0.00    0.25    1.88    0.00   97.74
    > Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
    > sdg               0.00     0.00  213.50    0.00  3672.00     0.00    17.20     0.10    0.45    0.45    0.00   0.40   8.45 =========================================
    >
    > $ sudo ./fio-2.19 --runtime 120 --eta-newline=30 output/fio/bssplit_readtest.fio
    > db-oltp-w: (g=0): rw=randread, bs=(R) 8192B-16.0KiB, (W) 4096B-4096B, (T) 4096B-4096B, ioengine=libaio, iodepth=8
    > fio-2.19
    > Starting 1 process
    > Jobs: 1 (f=1), 0-100 IOPS: [r(1)][26.4%][r=1632KiB/s,w=0KiB/s][r=194,w=0 IOPS][eta 01m:29s]
    > Jobs: 1 (f=1), 0-100 IOPS: [r(1)][51.2%][r=1648KiB/s,w=0KiB/s][r=190,w=0 IOPS][eta 00m:59s]
    > Jobs: 1 (f=1), 0-100 IOPS: [r(1)][76.0%][r=1760KiB/s,w=0KiB/s][r=193,w=0 IOPS][eta 00m:29s]
    > Jobs: 1 (f=1), 0-100 IOPS: [r(1)][100.0%][r=1816KiB/s,w=0KiB/s][r=202,w=0 IOPS][eta 00m:00s]
    > db-oltp-w: (groupid=0, jobs=1): err= 0: pid=1605: Wed Apr  5 15:53:00 2017
    >    read: IOPS=200, BW=1765KiB/s (1808kB/s)(207MiB/120013msec)
    >     slat (usec): min=3, max=117, avg=30.53, stdev=11.20
    >     clat (usec): min=120, max=8658, avg=413.81, stdev=216.67
    >      lat (usec): min=139, max=8697, avg=444.34, stdev=218.71
    >     clat percentiles (usec):
    >      |  1.00th=[  175],  5.00th=[  221], 10.00th=[  251], 20.00th=[  290],
    >      | 30.00th=[  338], 40.00th=[  382], 50.00th=[  406], 60.00th=[  434],
    >      | 70.00th=[  462], 80.00th=[  498], 90.00th=[  556], 95.00th=[  620],
    >      | 99.00th=[  756], 99.50th=[  932], 99.90th=[ 3632], 99.95th=[ 4704],
    >      | 99.99th=[ 6368]
    >     lat (usec) : 250=9.84%, 500=70.75%, 750=18.34%, 1000=0.60%
    >     lat (msec) : 2=0.26%, 4=0.12%, 10=0.08%
    >   cpu          : usr=0.37%, sys=0.84%, ctx=44140, majf=0, minf=60
    >   IO depths    : 1=91.3%, 2=8.6%, 4=0.1%, 8=0.1%, 16=0.0%, 32=0.0%, >=64=0.0%
    >      submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
    >      complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
    >      issued rwt: total=24072,0,0, short=0,0,0, dropped=0,0,0
    >      errors    : total=0, first_error=0/<Success>
    >      latency   : target=0, window=0, percentile=100.00%, depth=8
    >
    > Run status group 0 (all jobs):
    >    READ: bw=1765KiB/s (1808kB/s), 1765KiB/s-1765KiB/s (1808kB/s-1808kB/s), io=207MiB (217MB), run=120013-120013msec
    > ========================================
    >
    > $ cat output/fio/bssplit_writetest.fio
    > [global]
    > ioengine=libaio
    > direct=1
    > time_based
    > norandommap
    > group_reporting
    > disk_util=0
    > continue_on_error=all
    > rate_process=poisson
    >
    > [db-oltp-w]
    > bssplit=,8k/90:16k/10,
    > size=128G
    > filename=/dev/sdg
    > rw=randwrite
    > iodepth=8
    > rate_iops=100
    > =========================================
    > $ iostat -x 2 sdg
    >
    > avg-cpu:  %user   %nice %system %iowait  %steal   %idle
    >            0.13    0.00    0.25    4.89    0.00   94.74
    > Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
    > sdg               0.00     0.00    0.00  195.00     0.00  3480.00    17.85     0.28    1.43    0.00    1.43   1.06  20.65
    >
    > avg-cpu:  %user   %nice %system %iowait  %steal   %idle
    >            0.13    0.00    0.38    4.38    0.00   95.12
    > Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
    > sdg               0.00     0.00    0.00  202.50     0.00  3632.00    17.94     0.24    1.18    0.00    1.18   0.92  18.60
    >
    > avg-cpu:  %user   %nice %system %iowait  %steal   %idle
    >            0.00    0.00    0.25    3.76    0.00   95.98
    > Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
    > sdg               0.00     0.00    0.00  179.00     0.00  3072.00    17.16     0.21    1.15    0.00    1.15   0.92  16.45
    >
    > avg-cpu:  %user   %nice %system %iowait  %steal   %idle
    >            0.13    0.00    0.25    4.52    0.00   95.11
    > Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
    > sdg               0.00     0.00    0.00  199.50     0.00  3472.00    17.40     0.25    1.24    0.00    1.24   0.98  19.55
    > ==========================================
    >
    > $ sudo ./fio-2.19 --runtime 120 --eta-newline=30 output/fio/bssplit_writetest.fio
    > db-oltp-w: (g=0): rw=randwrite, bs=(R) 4096B-4096B, (W) 8192B-16.0KiB, (T) 4096B-4096B, ioengine=libaio, iodepth=8
    > fio-2.19
    > Starting 1 process
    > Jobs: 1 (f=1), 0-100 IOPS: [w(1)][26.4%][r=0KiB/s,w=1632KiB/s][r=0,w=194 IOPS][eta 01m:29s]
    > Jobs: 1 (f=1), 0-100 IOPS: [w(1)][51.2%][r=0KiB/s,w=1648KiB/s][r=0,w=190 IOPS][eta 00m:59s]
    > Jobs: 1 (f=1), 0-100 IOPS: [w(1)][76.0%][r=0KiB/s,w=1760KiB/s][r=0,w=193 IOPS][eta 00m:29s]
    > Jobs: 1 (f=1), 0-100 IOPS: [w(1)][100.0%][r=0KiB/s,w=1816KiB/s][r=0,w=202 IOPS][eta 00m:00s]
    > db-oltp-w: (groupid=0, jobs=1): err= 0: pid=1616: Wed Apr  5 15:57:04 2017
    >   write: IOPS=200, BW=1765KiB/s (1807kB/s)(207MiB/120014msec)
    >     slat (usec): min=5, max=125, avg=31.91, stdev=12.20
    >     clat (usec): min=500, max=26437, avg=1170.96, stdev=849.81
    >      lat (usec): min=516, max=26448, avg=1202.87, stdev=849.55
    >     clat percentiles (usec):
    >      |  1.00th=[  644],  5.00th=[  732], 10.00th=[  788], 20.00th=[  868],
    >      | 30.00th=[  932], 40.00th=[  996], 50.00th=[ 1048], 60.00th=[ 1128],
    >      | 70.00th=[ 1192], 80.00th=[ 1288], 90.00th=[ 1448], 95.00th=[ 1608],
    >      | 99.00th=[ 4832], 99.50th=[ 5920], 99.90th=[12480], 99.95th=[13760],
    >      | 99.99th=[26496]
    >     lat (usec) : 750=6.15%, 1000=34.93%
    >     lat (msec) : 2=56.35%, 4=1.15%, 10=1.27%, 20=0.11%, 50=0.03%
    >   cpu          : usr=0.39%, sys=0.79%, ctx=38562, majf=0, minf=34
    >   IO depths    : 1=80.2%, 2=19.3%, 4=0.4%, 8=0.1%, 16=0.0%, 32=0.0%, >=64=0.0%
    >      submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
    >      complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
    >      issued rwt: total=0,24072,0, short=0,0,0, dropped=0,0,0
    >      errors    : total=0, first_error=0/<Success>
    >      latency   : target=0, window=0, percentile=100.00%, depth=8
    >
    > Run status group 0 (all jobs):
    >   WRITE: bw=1765KiB/s (1807kB/s), 1765KiB/s-1765KiB/s (1807kB/s-1807kB/s), io=207MiB (217MB), run=120014-120014msec
    > ==========================================--
    > To unsubscribe from this list: send the line "unsubscribe fio" in
    > the body of a message to majordomo@xxxxxxxxxxxxxxx
    > More majordomo info at  http://vger.kernel.org/majordomo-info.html
    

��.n��������+%������w��{.n�������^n�r������&��z�ޗ�zf���h���~����������_��+v���)ߣ�

[Index of Archives]     [Linux Kernel]     [Linux SCSI]     [Linux IDE]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]

  Powered by Linux