0

I'm trying to somehow test my rbd storage with random read, random write, mixed randrw, but the output is not correct, it is a sequential growing number.

What is wrong with my steps?

This is the fio file that I ran:

; fio-rand-write.job for fiotest

[global]
name=fio-rand-write
filename=fio-rand-write
rw=randwrite
bs=4K
direct=1
write_iops_log=rand-read

[file1]
size=1G
ioengine=libaio
iodepth=16

And the result is this:

head rand-read_iops.1.log
2, 1, 1, 4096, 0
2, 1, 1, 4096, 0
2, 1, 1, 4096, 0
2, 1, 1, 4096, 0
2, 1, 1, 4096, 0
3, 1, 1, 4096, 0
4, 1, 1, 4096, 0
5, 1, 1, 4096, 0
5, 1, 1, 4096, 0
5, 1, 1, 4096, 0

tail rand-read_iops.1.log
30700, 1, 1, 4096, 0
30700, 1, 1, 4096, 0
30700, 1, 1, 4096, 0
30700, 1, 1, 4096, 0
30700, 1, 1, 4096, 0
30700, 1, 1, 4096, 0
30700, 1, 1, 4096, 0
30700, 1, 1, 4096, 0
30700, 1, 1, 4096, 0
30700, 1, 1, 4096, 0

I'm using fio 3.18.

Why I don't get the iops that is the real one?

Peter Cordes
  • 328,167
  • 45
  • 605
  • 847
  • What is your test setup (hardware / filesystem / OSes)? Are you sure caching isn't merely slow to warm up, and eventually effective? Also, this looks like a question for serverfault, not about programming. – Peter Cordes Mar 11 '20 at 02:23

1 Answers1

2

(Note this isn't really a programming question so Stackoverflow is the wrong place to ask this... Maybe Super User or Serverfault would be a better choice and get faster answers?)

but the output is not correct, it is a sequential growing number

Which column are you referring to? If you mean the left most column then isn't that time per the fio Log File Formats documentation?

Fio supports a variety of log file formats, for logging latencies, bandwidth, and IOPS. The logs share a common format, which looks like this:

time (msec), value, data direction, block size (bytes), offset (bytes)

Doesn't time generally monotonically increase relative to prior readings (accounting for precision)?

Also see the documentation for write_iops_log that says:

Because fio defaults to individual I/O logging, the value entry in the IOPS log will be 1 unless windowed logging (see log_avg_msec) has been enabled

Anon
  • 6,306
  • 2
  • 38
  • 56