summaryrefslogtreecommitdiff
path: root/fio_generate_plots
blob: 9b1e1ca59ecf7df69d38aa2769e9b84c25b5c1c5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#!/bin/bash

# Use gnuplot to generate plots from fio run with -l and/or -w

if [ "$1"x == "x" ]; then
	echo Need title as arg
	exit 1
fi

GNUPLOT=$(which gnuplot)
if [ ! -x $GNUPLOT ]; then
	echo You need gnuplot installed to generate graphs
	exit 1
fi

TITLE=$1

PLOT_LINE=""
for i in *bw.log; do
	if [ ! -r $i ]; then
		continue
	fi
	PT=$(echo $i | sed s/_bw.log//g)
	if [ "$PLOT_LINE"x != "x" ]; then
		PLOT_LINE=$PLOT_LINE", "
	fi

	PLOT_LINE=$PLOT_LINE"'$i' title '$PT' with lines"
done

if [ "$PLOT_LINE"x != "x" ]; then
	echo Making bw logs
	echo "set title 'Bandwidth - $TITLE'; set xlabel 'time (msec)'; set ylabel 'KiB/sec'; set terminal png; set output '$TITLE-bw.png'; plot " $PLOT_LINE | $GNUPLOT -
fi

PLOT_LINE=""
for i in *slat.log; do
	if [ ! -r $i ]; then
		continue
	fi
	PT=$(echo $i | sed s/_slat.log//g)
	if [ "$PLOT_LINE"x != "x" ]; then
		PLOT_LINE=$PLOT_LINE", "
	fi

	PLOT_LINE=$PLOT_LINE"'$i' title '$PT' with lines"
done

if [ "$PLOT_LINE"x != "x" ]; then
	echo Making slat logs $PLOT_LINE
	echo "set title 'Submission latency - $TITLE'; set xlabel 'time (msec)'; set ylabel 'latency (msec)'; set terminal png; set output '$TITLE-slat.png'; plot " $PLOT_LINE | $GNUPLOT -
fi

PLOT_LINE=""
for i in *clat.log; do
	if [ ! -r $i ]; then
		continue
	fi
	PT=$(echo $i | sed s/_clat.log//g)
	if [ "$PLOT_LINE"x != "x" ]; then
		PLOT_LINE=$PLOT_LINE", "
	fi

	PLOT_LINE=$PLOT_LINE"'$i' title '$PT' with lines"
done

if [ "$PLOT_LINE"x != "x" ]; then
	echo Making clat logs $PLOT_LINE
	echo "set title 'Completion latency - $TITLE'; set xlabel 'time (msec)'; set ylabel 'latency (msec)'; set terminal png; set output '$TITLE-clat.png'; plot " $PLOT_LINE | $GNUPLOT -
fi