#!@BASH@ # StarPU --- Runtime system for heterogeneous multicore architectures. # # Copyright (C) 2008, 2009, 2010, 2013 Université de Bordeaux 1 # Copyright (C) 2010, 2013 Centre National de la Recherche Scientifique # # StarPU is free software; you can redistribute it and/or modify # it under the terms of the GNU Lesser General Public License as published by # the Free Software Foundation; either version 2.1 of the License, or (at # your option) any later version. # # StarPU is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # # See the GNU Lesser General Public License in COPYING.LGPL for more details. PROGNAME=$0 usage() { echo "Offline tool to draw codelet profile over a traced execution" echo "" echo "Usage: $PROGNAME distrib.data codelet_name" echo "" echo "Options:" echo " -h, --help display this help and exit" echo " -v, --version output version information and exit" echo "" echo "Report bugs to <@PACKAGE_BUGREPORT@>" exit 1 } if [ "$1" = "-v" ] || [ "$1" = "--version" ] ; then echo "$PROGNAME (@PACKAGE_NAME@) @PACKAGE_VERSION@" exit 0 fi if [ "$1" = "-h" ] || [ "$1" = "--help" ] || [ "$2" = "" ] ; then usage fi inputfile=$1 codelet_name=$2 archlist=`< $inputfile grep "^$codelet_name " | cut -f 2 | sort | uniq | xargs` # extract subfiles from the history file for arch in $archlist do echo "Arch $arch" grep "^$codelet_name $arch" $inputfile > $inputfile.$arch done # create the gnuplot file gpfile=$inputfile.gp echo "#!/usr/bin/gnuplot -persist" > $gpfile echo "set term postscript eps enhanced color" >> $gpfile echo "set logscale x" >> $gpfile echo "set logscale y" >> $gpfile echo "set output \"$inputfile.eps\"" >> $gpfile echo "set key top left" >> $gpfile echo "set xlabel \"Total data size\"" >> $gpfile echo "set ylabel \"Execution time (ms)\"" >> $gpfile echo -n "plot " >> $gpfile first=1 for arch in $archlist do if [ $first = 0 ] then echo -n " , " >> $gpfile else first=0 fi echo -n " \"$inputfile.$arch\" using 3:5 title \"${codelet_name//_/\\\\_} arch $arch\"" >> $gpfile done