All of lore.kernel.org
 help / color / mirror / Atom feed
* Ending condition for non-rr file service
@ 2023-05-26 15:38 Travis Downs
  2023-05-26 17:28 ` Vincent Fu
  0 siblings, 1 reply; 2+ messages in thread
From: Travis Downs @ 2023-05-26 15:38 UTC (permalink / raw)
  To: fio

I guess I understand when fio "stops" when using 1 file per job: after
`io_size` IOs,
which is usually the same as `size` if `io_size` has not been
specified explicitly.

When size == io_size, this means that all blocks of the files are
written exactly once
with linear or random writes, except if norandmap=1, in which case
some blocks will
likely be written 0 times and others 2 or more times.

How does this work for nrfiles > 1 and linear writes (rw=write) and
file_service_type
set to one of the random ones? For the non-uniform distributions some
files will be
written at a higher rate than others: does the write pointer just loop
when it gets to
the end of the file? So io_size writes will still be done, but some
files will not be
completely written while others may be written more than once?

Travis

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Ending condition for non-rr file service
  2023-05-26 15:38 Ending condition for non-rr file service Travis Downs
@ 2023-05-26 17:28 ` Vincent Fu
  0 siblings, 0 replies; 2+ messages in thread
From: Vincent Fu @ 2023-05-26 17:28 UTC (permalink / raw)
  To: Travis Downs, fio

On 5/26/23 11:38, Travis Downs wrote:
 > I guess I understand when fio "stops" when using 1 file per job: after
 > `io_size` IOs,
 > which is usually the same as `size` if `io_size` has not been
 > specified explicitly.
 >
 > When size == io_size, this means that all blocks of the files are
 > written exactly once
 > with linear or random writes, except if norandmap=1, in which case
 > some blocks will
 > likely be written 0 times and others 2 or more times.
 >
 > How does this work for nrfiles > 1 and linear writes (rw=write) and
 > file_service_type
 > set to one of the random ones? For the non-uniform distributions some
 > files will be
 > written at a higher rate than others: does the write pointer just loop
 > when it gets to
 > the end of the file? So io_size writes will still be done, but some
 > files will not be
 > completely written while others may be written more than once?
 >
 > Travis
Fio's behavior in this situation is not explicitly spelled out in the 
documentation.

For a job with a single file, fio will just start over again and write 
the file multiple times when io_size > filesize. I would expect the same 
to happen when nrfiles > 1.

Try a run with --debug=io,file and let us know!

Vincent

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2023-05-26 17:28 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-05-26 15:38 Ending condition for non-rr file service Travis Downs
2023-05-26 17:28 ` Vincent Fu

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.