Hi Jens, On Wed, Sep 19, 2018 at 12:47:37PM -0600, Jens Axboe wrote: > On 9/19/18 12:25 PM, Dennis Zhou wrote: > > Running concurrent workloads via multiple jobs can lead to > > nondeterministic results as we are at the schedulers mercy. While the > > actual performance of the workload may vary regardless, this makes the > > order of events consistent. > > > > This patch introduces two flags: --merge_blktrace_file=<file> and > > --merge-blktrace-only. When the first is specified, files that are ':' > > separated in --read_iolog are passed to a merge function wich then > > produces a single sorted trace file. This file is then passed on in > > place of the sorted list or fio exists if --merge-blktrace-only is > > specified. > > > > During merging, events are filtered based on what fio cares about and > > the pdu is discarded as well. > > This looks fine to me, but it's missing documentation (fio.1 and HOWTO) > for added options. For the feature as a whole as well. > > > diff --git a/thread_options.h b/thread_options.h > > index 39315834..99552326 100644 > > --- a/thread_options.h > > +++ b/thread_options.h > > @@ -258,6 +258,7 @@ struct thread_options { > > char *read_iolog_file; > > bool read_iolog_chunked; > > char *write_iolog_file; > > + char *merge_blktrace_file; > > > > unsigned int write_bw_log; > > unsigned int write_lat_log; > > This needs an accompanying change to struct thread_options_pack, and a > cconv.c addition to ensure it's converted properly over the wire for > client/server runs of fio.o > > Basically both comments here apply to the rest of the series as well :-) > Ah that makes sense. I wasn't quite sure what the _pack was for. Now I get it. I'll add the corresponding documentation and send out a v2! Thanks for looking at it so quickly. Thanks, Dennis