1 NAME 2 fio2gnuplot - Render fio's output files with gnuplot 3 SYNOPSIS 4 fio2gnuplot [-ghbiodvk] [-t title] [-o outputfile] 5 [-d output_dir] [-p pattern] 6 [-G type] [-m min_time] [-M max_time] 7 8 DESCRIPTION 9 fio2gnuplot analyze a set of fio's log files to turn them into a set of graphical traces using gnuplot tool. 10 Several flavor of plotting are produced 11 12 Individual 2D Graph 13 Each file is plotted in a separate image file with several option 14 - raw : Plot the exact reported performance. This plotting could be difficult to read 15 - smooth :a smoother version of the raw print 16 Using csplines option of gnuplot, the rendering is 17 filtered to get an easier to read graph. 18 - trend : an even smoother version of the raw print to get trends 19 Bezier's curves makes much more filtered plots 20 The resulting graph helps at understanding trends. 21 22 Grouped 2D graph 23 All files are plotted in a single image to ease the comparaison. The same rendering options as per the individual 2D graph are used : 24 - raw 25 - smooth 26 - trend 27 28 Grouped 3D graph 29 All files are plotted into a single 3D graph. 30 The 3D plotting generates a 'surface' to estimate how close were 31 the performance. 32 A flat surface means a good coherency between traces. 33 A rugged surface means a lack of coherency between traces 34 35 Mathemical Plotting 36 Average graph 37 A bar graph to show the average performance of each file. 38 A green line is added to show the global average performance. 39 This green line helps at understanding how far from the average is 40 every individual file. 41 42 Min graph 43 A green line is added to show the global average of minimal performance. 44 This green line helps at understanding how far from the average is 45 every individual file. 46 47 Max graph 48 A bar graph to show the maximum performance of each file. 49 A green line is added to show the global average of maximal performance. 50 This green line helps at understanding how far from the average is 51 every individual file. 52 53 Standard Deviation 54 A bar graph to show the standard deviation of each file. 55 A green line is added to show the global average of standard deviation. 56 This green line helps at understanding how far from the average is 57 every individual file. 58 59 OPTIONS 60 -h or --help 61 The option -h displays help 62 63 -p 'pattern' or --pattern 'pattern' 64 A pattern in regexp to select fio input files. 65 Don't forget the simple quotes to avoid shell's interactions 66 67 -b or --bandwidth 68 A predefined pattern for selecting *_bw.log files 69 70 -i or --iops 71 A predefined pattern for selecting *_iops.log files 72 73 -g or --gnuplot 74 Render gnuplot traces before exiting 75 76 -o file or --outputfile file 77 The basename for gnuplot traces (set with the pattern if defined) 78 79 -d dir or --outputdir dir 80 The directory where gnuplot shall render files. 81 82 -t title or --title title 83 The title of the gnuplot traces. 84 Title is set with the block size detected in fio trace 85 86 -G type or --Global type 87 Search for 'type' in .global files match by a pattern. 88 Available types are : min, max, avg, stddev. 89 The .global extension is added automatically to the pattern 90 91 -m time or --min_time time 92 Only consider data starting from 'time' seconds. Default is 0 93 94 -M time or --max_time time 95 Only consider data ending before 'time' seconds. Default is -1 aka nolimit 96 97 -v or --verbose 98 Increasing verbosity 99 100 -k or --keep 101 Keep all temporary files from gnuplot's output dir 102 103 EXAMPLE 104 To plot all the traces named like 'host*_read_4k_iops.log' 105 $ fio2gnuplot -p 'host*_read_4k_iops.log' -g 106 107 To plot all IO oriented log files from the current directory 108 $ fio2gnuplot -g -i 109 110 To plot all Bandwidth oriented log files from the current directory 111 $ fio2gnuplot -g -b 112 113 To plot all Bandwidth oriented log files in a directory name 'outdir' 114 $ fio2gnuplot -g -b -d outdir 115 116 AUTHOR 117 Erwan Velu <erwan (a] enovance.com> 118