fio2gnuplot - Render fio's output files with gnuplot
Contents
Description
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
Individual2DGraph
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.
Grouped2Dgraph
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
Grouped3Dgraph
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
MathemicalPlottingAveragegraph
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.
Mingraph
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.
Maxgraph
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.
StandardDeviation
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.
Example
Toplotallthetracesnamedlike'host*_read_4k_iops.log'
$ fio2gnuplot-p 'host*_read_4k_iops.log' -gToplotallIOorientedlogfilesfromthecurrentdirectory
$ fio2gnuplot-g-iToplotallBandwidthorientedlogfilesfromthecurrentdirectory
$ fio2gnuplot-g-bToplotallBandwidthorientedlogfilesinadirectoryname'outdir'
$ fio2gnuplot-g-b-d outdir
Name
fio2gnuplot - Render fio's output files with gnuplot
Options
-hor--help
The option -h displays help
-p'pattern'or--pattern'pattern'
A pattern in regexp to select fio input files. Don't forget the simple quotes to avoid shell's
interactions
-bor--bandwidth
A predefined pattern for selecting *_bw.log files
-ior--iops
A predefined pattern for selecting *_iops.log files
-gor--gnuplot
Render gnuplot traces before exiting
-ofileor--outputfilefile
The basename for gnuplot traces (set with the pattern if defined)
-ddiror--outputdirdir
The directory where gnuplot shall render files.
-ttitleor--titletitle
The title of the gnuplot traces. Title is set with the block size detected in fio trace
-Gtypeor--Globaltype
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-mtimeor--min_timetime
Only consider data starting from 'time' seconds. Default is 0
-Mtimeor--max_timetime
Only consider data ending before 'time' seconds. Default is -1 aka nolimit
-vor--verbose
Increasing verbosity
-kor--keep
Keep all temporary files from gnuplot's output dir
Synopsis
fio2gnuplot [-ghbiodvk] [-ttitle] [-ooutputfile]
[-doutput_dir] [-ppattern]
[-Gtype] [-mmin_time] [-Mmax_time]
