0

I am exploring fio tools with different options. I want to share the read and write workload, so supplied below jobfile to fio.

[read-4K-write-64K]
blocksize=4K,64K,
rw=readwrite
rwmixread=50
size=10M
filename=readwritefile

output snippet:

read: IOPS=11.0k, BW=42.0MiB/s (45.1MB/s)(616KiB/14msec)
write: IOPS=10.8k, BW=674MiB/s (707MB/s)(9664KiB/14msec)

IO depths    : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 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 rwts: total=154,151,0,0 short=0,0,0,0 dropped=0,0,0,0
latency   : target=0, window=0, percentile=100.00%, depth=1


Run status group 0 (all jobs):
READ: bw=42.0MiB/s (45.1MB/s), 42.0MiB/s-42.0MiB/s (45.1MB/s-45.1MB/s), io=616KiB (631kB), run=14-14msec
WRITE: bw=674MiB/s (707MB/s), 674MiB/s-674MiB/s (707MB/s-707MB/s), io=9664KiB (9896kB), run=14-14msec

Why the option rwmixread=50 does not set the size of io to read from file and write to file as 5k(approx)?

Instead could see from the snippet 616KiB for read and 9664KiB for write.

Actually what is the effect of rwmixread and rwmixwrite on the test workload.

Thanks and Regards, Mohan

0

Arg, a multi-question question!

Why [doesn't] the option rwmixread=50 [..] set the size of io to read from file and write to file as 5k(approx)?

rwmixread just specifies what percentage of the I/O done should be reads. Unfortunately I don't understand where you get the "5k" figure from - could you explain that? Doing the maths:

10M = 10485760 bytes 
(10485760 / ( (4 * 1024) + (64 * 1024) )) = 150

So we should do around 150 of each type of I/O direction:

issued rwts: total=154,151,0,0 short=0,0,0,0 dropped=0,0,0,0

fio is not far off that. More calculation:

154 * (4 * 1024) = 630784 = 616KBytes

So I'm unclear what the issue is - the numbers seem to correspond to what you asked for given the different block sizes (all the I/O had to be finish after you had done 10MBytes of I/O).

Actually what is the effect of rwmixread and rwmixwrite on the test workload.

Those options change the ratio of reads to writes in a workload. However if the blocksize for reads is bigger than the blocksize for writes (or vice versa) it stands to reason that when you are doing I/O in a fixed sized region the total amount of data done by each direction will be different.

  • @mohan - did this answer your question and if so could you accept it? – Anon Dec 11 '18 at 6:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.