Commit | Line | Data |
---|---|---|
40cfddb4 | 1 | #! /bin/sh |
ebac4655 JA |
2 | |
3 | # Use gnuplot to generate plots from fio run with -l and/or -w | |
4 | ||
40cfddb4 | 5 | if [ "$1"x = "x" ]; then |
4d1577b1 | 6 | echo "Usage: fio_generate_plots title [xres yres]" |
ebac4655 JA |
7 | exit 1 |
8 | fi | |
9 | ||
1618495b JA |
10 | GNUPLOT=$(which gnuplot) |
11 | if [ ! -x $GNUPLOT ]; then | |
12 | echo You need gnuplot installed to generate graphs | |
13 | exit 1 | |
14 | fi | |
15 | ||
ebac4655 JA |
16 | TITLE=$1 |
17 | ||
4d1577b1 MS |
18 | # set resolution |
19 | if [ "$2"x != "x" -a "$3"x != "x" ]; then | |
20 | XRES="$2" | |
21 | YRES="$3" | |
22 | else | |
23 | XRES=1024 | |
24 | YRES=768 | |
25 | fi | |
26 | ||
ebac4655 JA |
27 | PLOT_LINE="" |
28 | for i in *bw.log; do | |
29 | if [ ! -r $i ]; then | |
30 | continue | |
31 | fi | |
84f83179 | 32 | PT=$(echo $i | sed s/_bw.log//g) |
ebac4655 JA |
33 | if [ "$PLOT_LINE"x != "x" ]; then |
34 | PLOT_LINE=$PLOT_LINE", " | |
35 | fi | |
36 | ||
84f83179 | 37 | PLOT_LINE=$PLOT_LINE"'$i' title '$PT' with lines" |
ebac4655 JA |
38 | done |
39 | ||
40 | if [ "$PLOT_LINE"x != "x" ]; then | |
41 | echo Making bw logs | |
4d1577b1 | 42 | echo "set title 'Bandwidth - $TITLE'; set xlabel 'time (msec)'; set ylabel 'KB/sec'; set terminal png size $XRES,$YRES; set output '$TITLE-bw.png'; plot " $PLOT_LINE | $GNUPLOT - |
ebac4655 JA |
43 | fi |
44 | ||
c8eeb9df JA |
45 | PLOT_LINE="" |
46 | for i in *iops.log; do | |
47 | if [ ! -r $i ]; then | |
48 | continue | |
49 | fi | |
50 | PT=$(echo $i | sed s/_iops.log//g) | |
51 | if [ "$PLOT_LINE"x != "x" ]; then | |
52 | PLOT_LINE=$PLOT_LINE", " | |
53 | fi | |
54 | ||
55 | PLOT_LINE=$PLOT_LINE"'$i' title '$PT' with lines" | |
56 | done | |
57 | ||
58 | if [ "$PLOT_LINE"x != "x" ]; then | |
59 | echo Making bw logs | |
60 | echo "set title 'IOPS - $TITLE'; set xlabel 'time (msec)'; set ylabel 'IOPS'; set terminal png size $XRES,$YRES; set output '$TITLE-IOPS.png'; plot " $PLOT_LINE | $GNUPLOT - | |
61 | fi | |
62 | ||
ebac4655 JA |
63 | PLOT_LINE="" |
64 | for i in *slat.log; do | |
65 | if [ ! -r $i ]; then | |
66 | continue | |
67 | fi | |
84f83179 | 68 | PT=$(echo $i | sed s/_slat.log//g) |
ebac4655 JA |
69 | if [ "$PLOT_LINE"x != "x" ]; then |
70 | PLOT_LINE=$PLOT_LINE", " | |
71 | fi | |
72 | ||
84f83179 | 73 | PLOT_LINE=$PLOT_LINE"'$i' title '$PT' with lines" |
ebac4655 JA |
74 | done |
75 | ||
76 | if [ "$PLOT_LINE"x != "x" ]; then | |
77 | echo Making slat logs $PLOT_LINE | |
4d1577b1 | 78 | echo "set title 'Submission latency - $TITLE'; set xlabel 'time (msec)'; set ylabel 'latency (msec)'; set terminal png size $XRES,$YRES; set output '$TITLE-slat.png'; plot " $PLOT_LINE | $GNUPLOT - |
ebac4655 JA |
79 | fi |
80 | ||
81 | PLOT_LINE="" | |
82 | for i in *clat.log; do | |
83 | if [ ! -r $i ]; then | |
84 | continue | |
85 | fi | |
84f83179 | 86 | PT=$(echo $i | sed s/_clat.log//g) |
ebac4655 JA |
87 | if [ "$PLOT_LINE"x != "x" ]; then |
88 | PLOT_LINE=$PLOT_LINE", " | |
89 | fi | |
90 | ||
84f83179 | 91 | PLOT_LINE=$PLOT_LINE"'$i' title '$PT' with lines" |
ebac4655 JA |
92 | done |
93 | ||
94 | if [ "$PLOT_LINE"x != "x" ]; then | |
95 | echo Making clat logs $PLOT_LINE | |
4d1577b1 | 96 | echo "set title 'Completion latency - $TITLE'; set xlabel 'time (msec)'; set ylabel 'latency (msec)'; set terminal png size $XRES,$YRES; set output '$TITLE-clat.png'; plot " $PLOT_LINE | $GNUPLOT - |
ebac4655 | 97 | fi |
02af0988 JA |
98 | |
99 | PLOT_LINE="" | |
100 | for i in *_lat.log; do | |
101 | if [ ! -r $i ]; then | |
102 | continue | |
103 | fi | |
104 | PT=$(echo $i | sed s/_lat.log//g) | |
105 | if [ "$PLOT_LINE"x != "x" ]; then | |
106 | PLOT_LINE=$PLOT_LINE", " | |
107 | fi | |
108 | ||
109 | PLOT_LINE=$PLOT_LINE"'$i' title '$PT' with lines" | |
110 | done | |
111 | ||
112 | if [ "$PLOT_LINE"x != "x" ]; then | |
113 | echo Making lat logs $PLOT_LINE | |
4d1577b1 | 114 | echo "set title 'Latency - $TITLE'; set xlabel 'time (msec)'; set ylabel 'latency (msec)'; set terminal png size $XRES,$YRES; set output '$TITLE-lat.png'; plot " $PLOT_LINE | $GNUPLOT - |
02af0988 | 115 | fi |