Re: fio parsing issue when trying to use latency_target and latency_window
Vincent Fu <[email protected]> Thu, 12 Mar 2026 10:37:50 -0400
| Newsgroups | org.kernel.vger.fio |
|---|---|
| Message-ID | <CAOp=CX=qEYiGLUepFc5myXaUVZFv4CdPRt9g2WzVe-ARBr6_ng@mail.gmail.com> |
On Thu, Mar 12, 2026 at 12:03=E2=80=AFAM Mark Erdos <[email protected]> = wrote: > > Hello, > > I am more and more convinced that this is a bug, but I will be the happie= st to learn if it isn't as it would be a shorter path to fix. I believe the= below is some parsing bug or misinterpretation of the manual by me. > > Using fio-3.41 now, but the experience is similar in fio-3.35 I used prio= r. > > I am running an openshift KubeVirt VM environment with NVMe/TCP block sto= rage backend using portworx free CSI and Pure FlashArray. There is a master= and 3 VMs as the fio workers. > > Output (attached): > It is definitely an issue that in the output "latency : target=3D5000, = window=3D5000000, percentile=3D99.00%, depth=3D1" there are no time units u= sed, so it is difficult to know how my changes in the input affect the outp= ut. > > Input (attached): > Per the manual https://fio.readthedocs.io/en/latest/fio_doc.html#i-o-late= ncy, latency_target and latency_window both should be in microseconds if un= it is omitted. However, as in this example, input latency_target=3D5 produc= es in the output target=3D5000, while input latency_window=3D5000000 produc= es window=3D5000000 in the output. So the two are not handled the same. I t= ested using units usec, msec, us, ms, s, I was not able to find one that I = was sure about what is happening, especially as the output is void of unit = after the number. I can only indirectly infer, looking at the storage laten= cy from the storage GUI, but that is not very scientific and has not yielde= d yet. > > I found some reference here, https://github.com/axboe/fio/discussions/200= 6, but it suggested the issue is solved. Not sure how to use, or not solved= . > > Can you please guide me or let me know if I should file a bug (or two) on= git? > > Sincerely, thank you, > > -- > Mark > [email protected] Would everything make sense if the output had these units? latency : target=3D5000ns, window=3D5000000us, percentile=3D90.00%, = depth=3D1 Internally it looks like latency_target is stored as nsec and latency_window is stored as usec. Vincent