The following changes since commit 45213f1b15f820e6791118b7200a1185e2af7d87: pthread: bump min stack size (2016-07-14 10:36:12 -0700) are available in the git repository at: git://git.kernel.dk/fio.git master for you to fetch changes up to e4d03925dca33524be25d883febf9d3b83155a9f: plot: indicate that the pattern is a glob (2016-07-17 09:03:48 +0100) ---------------------------------------------------------------- Sitsofe Wheeler (2): plot: add gnuplot 5 support plot: indicate that the pattern is a glob tools/plot/fio2gnuplot | 6 +++--- tools/plot/graph2D.gpm | 37 +++++++++++++++++++++++++++++-------- tools/plot/graph3D.gpm | 33 ++++++++++++++++++++++++--------- tools/plot/math.gpm | 25 +++++++++++++++++++++---- 4 files changed, 77 insertions(+), 24 deletions(-) --- Diff of recent changes: diff --git a/tools/plot/fio2gnuplot b/tools/plot/fio2gnuplot index 1009ae0..a703ae3 100755 --- a/tools/plot/fio2gnuplot +++ b/tools/plot/fio2gnuplot @@ -31,7 +31,7 @@ def find_file(path, pattern): fio_data_file=[] # For all the local files for file in os.listdir(path): - # If the file math the regexp + # If the file matches the glob if fnmatch.fnmatch(file, pattern): # Let's consider this file fio_data_file.append(file) @@ -361,7 +361,7 @@ def print_help(): print 'fio2gnuplot -ghbiodvk -t <title> -o <outputfile> -p <pattern> -G <type> -m <time> -M <time>' print print '-h --help : Print this help' - print '-p <pattern> or --pattern <pattern> : A pattern in regexp to select fio input files' + print '-p <pattern> or --pattern <pattern> : A glob pattern to select fio input files' print '-b or --bandwidth : A predefined pattern for selecting *_bw.log files' print '-i or --iops : A predefined pattern for selecting *_iops.log files' print '-g or --gnuplot : Render gnuplot traces before exiting' @@ -487,7 +487,7 @@ def main(argv): #We need to adjust the output filename regarding the pattern required by the user if (pattern_set_by_user == True): gnuplot_output_filename=pattern - # As we do have some regexp in the pattern, let's make this simpliest + # As we do have some glob in the pattern, let's make this simpliest # We do remove the simpliest parts of the expression to get a clear file name gnuplot_output_filename=gnuplot_output_filename.replace('-*-','-') gnuplot_output_filename=gnuplot_output_filename.replace('*','-') diff --git a/tools/plot/graph2D.gpm b/tools/plot/graph2D.gpm index 5cd6ff3..769b754 100644 --- a/tools/plot/graph2D.gpm +++ b/tools/plot/graph2D.gpm @@ -1,9 +1,30 @@ # This Gnuplot file has been generated by eNovance -set title '$0' +needed_args = 8 +if (exists("ARGC") && ARGC >= needed_args) \ + found_args = 1; \ +else if (strlen("$$#") < 3 && "$#" >= needed_args) \ + found_args = 1; \ + ARG1 = "$0"; \ + ARG2 = "$1"; \ + ARG3 = "$2"; \ + ARG4 = "$3"; \ + ARG5 = "$4"; \ + ARG6 = "$5"; \ + ARG7 = "$6"; \ + ARG8 = "$7"; \ +else \ + found_args = 0; \ + print "Aborting: could not find all arguments"; \ + exit + +avg_num = ARG8 + 0 +avg_str = sprintf("%g", avg_num) + +set title ARG1 set terminal png size 1280,1024 -set output '$3.png' +set output ARG4 . '.png' #set terminal x11 #Preparing Axes @@ -12,7 +33,7 @@ set ytics axis out auto #set data style lines set key top left reverse set xlabel "Time (Seconds)" -set ylabel '$4' +set ylabel ARG5 set xrange [0:] set yrange [0:] @@ -22,13 +43,13 @@ set yrange [0:] set style line 100 lt 7 lw 0.5 set style line 1 lt 1 lw 3 pt 3 linecolor rgb "green" -plot '$1' using 2:3 with linespoints title '$2', $7 w l ls 1 ti 'Global average value ($7)' +plot ARG2 using 2:3 with linespoints title ARG3, avg_num w l ls 1 ti 'Global average value (' . avg_str . ')' -set output '$5.png' -plot '$1' using 2:3 smooth csplines title '$2', $7 w l ls 1 ti 'Global average value ($7)' +set output ARG6 . '.png' +plot ARG2 using 2:3 smooth csplines title ARG3, avg_num w l ls 1 ti 'Global average value (' . avg_str . ')' -set output '$6.png' -plot '$1' using 2:3 smooth bezier title '$2', $7 w l ls 1 ti 'Global average value ($7)' +set output ARG7 . '.png' +plot ARG2 using 2:3 smooth bezier title ARG3, avg_num w l ls 1 ti 'Global average value (' . avg_str .')' #pause -1 #The End diff --git a/tools/plot/graph3D.gpm b/tools/plot/graph3D.gpm index 93f7a4d..ac2cdf6 100644 --- a/tools/plot/graph3D.gpm +++ b/tools/plot/graph3D.gpm @@ -1,9 +1,24 @@ # This Gnuplot file has been generated by eNovance -set title '$0' +needed_args = 5 +if (exists("ARGC") && ARGC >= needed_args) \ + found_args = 1; \ +else if (strlen("$$#") < 3 && "$#" >= needed_args) \ + found_args = 1; \ + ARG1 = "$0"; \ + ARG2 = "$1"; \ + ARG3 = "$2"; \ + ARG4 = "$3"; \ + ARG5 = "$4"; \ +else \ + found_args = 0; \ + print "Aborting: could not find all arguments"; \ + exit + +set title ARG1 set terminal png size 1280,1024 -set output '$3.png' +set output ARG4 . '.png' #set terminal x11 #3D Config set isosamples 30 @@ -19,7 +34,7 @@ set grid back set key top left reverse set ylabel "Disk" set xlabel "Time (Seconds)" -set zlabel '$4' +set zlabel ARG5 set cbrange [0:] set zrange [0:] @@ -35,7 +50,7 @@ set multiplot set size 0.5,0.5 set view 64,216 set origin 0,0.5 -splot '$1' using 2:1:3 with linespoints title '$2' +splot ARG2 using 2:1:3 with linespoints title ARG3 #Top Right View set size 0.5,0.5 @@ -43,7 +58,7 @@ set origin 0.5,0.5 set view 90,0 set pm3d at s solid hidden3d 100 scansbackward set pm3d depthorder -splot '$1' using 2:1:3 with linespoints title '$2' +splot ARG2 using 2:1:3 with linespoints title ARG3 #Bottom Right View set size 0.5,0.5 @@ -51,13 +66,13 @@ set origin 0.5,0 set view 63,161 set pm3d at s solid hidden3d 100 scansbackward set pm3d depthorder -splot '$1' using 2:1:3 with linespoints title '$2' +splot ARG2 using 2:1:3 with linespoints title ARG3 #Bottom Left View set size 0.5,0.5 set origin 0,0 set pm3d map -splot '$1' using 2:1:3 with linespoints title '$2' +splot ARG2 using 2:1:3 with linespoints title ARG3 #Unsetting multiplotting unset multiplot @@ -66,7 +81,7 @@ unset multiplot #Preparing 3D Interactive view set mouse set terminal png size 1024,768 -set output '$3-3D.png' +set output ARG4 . '-3D.png' #set term x11 set view 64,216 @@ -74,7 +89,7 @@ set origin 0,0 set size 1,1 set pm3d at bs solid hidden3d 100 scansbackward set pm3d depthorder -splot '$1' using 2:1:3 with linespoints title '$2' +splot ARG2 using 2:1:3 with linespoints title ARG3 #pause -1 #The End diff --git a/tools/plot/math.gpm b/tools/plot/math.gpm index a01f5a0..0a2aff5 100644 --- a/tools/plot/math.gpm +++ b/tools/plot/math.gpm @@ -1,15 +1,32 @@ # This Gnuplot file has been generated by eNovance +if (exists("ARGC") && ARGC > 5) \ + found_args = 1; \ +else if (strlen("$$#") < 3 && "$#" > 5) \ + found_args = 1; \ + ARG1 = "$0"; \ + ARG2 = "$1"; \ + ARG3 = "$2"; \ + ARG4 = "$3"; \ + ARG5 = "$4"; \ + ARG6 = "$5"; \ +else \ + found_args = 0; \ + print "Aborting: could not find all arguments"; \ + exit -set title '$0' +avg_num = ARG6 + 0 +avg_str = sprintf("%g", avg_num) + +set title ARG1 set terminal png size 1280,1024 -set output '$3.png' +set output ARG4 . '.png' set palette rgbformulae 7,5,15 set style line 100 lt 7 lw 0.5 set style fill transparent solid 0.9 noborder set auto x -set ylabel '$4' +set ylabel ARG5 set xlabel "Disk" set yrange [0:] set style data histogram @@ -22,4 +39,4 @@ set xtics axis out set xtic rotate by 45 scale 0 font ",8" autojustify set xtics offset 0,-1 border -5,1,5 set style line 1 lt 1 lw 3 pt 3 linecolor rgb "green" -plot '$1' using 2:xtic(1) ti col, $5 w l ls 1 ti 'Global average value ($5)' +plot ARG2 using 2:xtic(1) ti col, avg_num w l ls 1 ti 'Global average value (' . avg_str . ')' -- To unsubscribe from this list: send the line "unsubscribe fio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html