fio2gnuplot(1) General Commands Manual fio2gnuplot(1)

fio2gnuplot - Render fio's output files with gnuplot

fio2gnuplot [-ghbiodvk] [-t title] [-o outputfile]

[-d output_dir] [-p pattern]
[-G type] [-m min_time] [-M max_time]

fio2gnuplot analyze a set of fio's log files to turn them into a set of graphical traces using gnuplot tool. Several flavor of plotting are produced

Each file is plotted in a separate image file with several option
  • raw : Plot the exact reported performance. This plotting could be difficult to read
  • smooth :a smoother version of the raw print Using csplines option of gnuplot, the rendering is filtered to get an easier to read graph.
  • trend : an even smoother version of the raw print to get trends Bezier's curves makes much more filtered plots The resulting graph helps at understanding trends.
All files are plotted in a single image to ease the comparison. The same rendering options as per the individual 2D graph are used :
  • raw
  • smooth
  • trend
All files are plotted into a single 3D graph. The 3D plotting generates a 'surface' to estimate how close were the performance. A flat surface means a good coherency between traces. A rugged surface means a lack of coherency between traces
A bar graph to show the average performance of each file. A green line is added to show the global average performance. This green line helps at understanding how far from the average is every individual file.
A green line is added to show the global average of minimal performance. This green line helps at understanding how far from the average is every individual file.
A bar graph to show the maximum performance of each file. A green line is added to show the global average of maximal performance. This green line helps at understanding how far from the average is every individual file.
A bar graph to show the standard deviation of each file. A green line is added to show the global average of standard deviation. This green line helps at understanding how far from the average is every individual file.

The option -h displays help
A pattern in regexp to select fio input files. Don't forget the simple quotes to avoid shell's interactions
A predefined pattern for selecting *_bw.log files
A predefined pattern for selecting *_iops.log files
Render gnuplot traces before exiting
The basename for gnuplot traces (set with the pattern if defined)
The directory where gnuplot shall render files.
The title of the gnuplot traces. Title is set with the block size detected in fio trace
Search for 'type' in .global files match by a pattern. Available types are : min, max, avg, stddev. The .global extension is added automatically to the pattern
Only consider data starting from 'time' seconds. Default is 0
Only consider data ending before 'time' seconds. Default is -1 aka nolimit
Increasing verbosity
Keep all temporary files from gnuplot's output dir

$ fio2gnuplot -p 'host*_read_4k_iops.log' -g
$ fio2gnuplot -g -i
$ fio2gnuplot -g -b
$ fio2gnuplot -g -b -d outdir

Erwan Velu <erwan@enovance.com>

August 2013