#!/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

TITLE=$1

PLOT_LINE=""
for i in *bw.log; do
	if [ ! -r $i ]; then
		continue
	fi
	if [ "$PLOT_LINE"x != "x" ]; then
		PLOT_LINE=$PLOT_LINE", "
	fi

	PLOT_LINE=$PLOT_LINE"'$i' 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
	if [ "$PLOT_LINE"x != "x" ]; then
		PLOT_LINE=$PLOT_LINE", "
	fi

	PLOT_LINE=$PLOT_LINE"'$i' 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
	if [ "$PLOT_LINE"x != "x" ]; then
		PLOT_LINE=$PLOT_LINE", "
	fi

	PLOT_LINE=$PLOT_LINE"'$i' 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
