| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108 | 
							- #!/bin/bash
 
- # StarPU --- Runtime system for heterogeneous multicore architectures.
 
- #
 
- # Copyright (C) 2009-2011,2014                           Université de Bordeaux
 
- # Copyright (C) 2010,2015,2017                           CNRS
 
- #
 
- # 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.
 
- #
 
- #suffix="-5800"
 
- suffix=""
 
- TIMINGDIR=$PWD/timing$suffix/
 
- sizelist=""
 
- schedlist=""
 
- outputfiles=""
 
- for file in `find $TIMINGDIR -type f`
 
- do
 
- 	name=`basename $file`
 
- 	size=`echo $name|sed -e "s/.*\.\(.*\)\..*/\1/"`
 
- 	sched=`echo $name|sed -e "s/\(.*\)\..*\(\..*\)/\1/"`
 
- 	sizelist="$sizelist $size"
 
- 	schedlist="$schedlist $sched"
 
- done
 
- sizelist=`echo $sizelist|tr " " "\n" |sort -n|uniq`
 
- schedlist=`echo $schedlist|tr " " "\n" |sort|uniq`
 
- for prio in `seq 0 1`
 
- do
 
- for sched in $schedlist
 
- do
 
- 	outputfile=output$suffix.$sched.$prio
 
- 	outputfiles="$outputfiles $outputfile"
 
- 	rm -f $outputfile
 
- 	for size in $sizelist
 
- 	do
 
- 		filename=$TIMINGDIR/$sched.$size.$prio
 
- 		if test -f $filename; then
 
- 			# file exists
 
- 			sum=0
 
- 			nsample=0
 
- 			
 
- 			for val in `cat $filename`
 
- 			do
 
- 				nsample=$(($nsample + 1))
 
- 				sum=$(echo "$sum + $val"|bc -l)
 
- 			done
 
- 			avg=$(echo "$sum / $nsample"|bc -l)
 
- 			gflops=$(echo "$size * $size * $size / ( $avg * 3000000)"|bc -l)
 
- 			echo "$size	$gflops" >> $outputfile
 
- 		else
 
- 			# file does not exist
 
- 			echo "$size	x" >> $outputfile 
 
- 		fi
 
- 	done
 
- done
 
- done
 
- gnuplotline=""
 
- for outputfile in $outputfiles
 
- do
 
- 	line=" \"$outputfile\" with linespoint"
 
- 	gnuplotline="$gnuplotline $line @"
 
- done
 
- gnuplotarg=`echo $gnuplotline|tr '@' ','|sed -e "s/\(.*\),/\1/"`
 
- prefix=cholesky
 
- gnuplot > /dev/null << EOF
 
- set term postscript eps enhanced color
 
- set output "$prefix$suffix.eps"
 
- set datafile missing 'x'
 
- set pointsize 0.75
 
- #set title "Impact of granularity"
 
- set grid y
 
- set grid x
 
- set xrange [0:49152]
 
- #set logscale x
 
- #set xtics 8192,8192,65536
 
- #set key invert box right bottom title "Scheduling policy"
 
- #set size 0.65
 
- set xlabel "Matrix size"
 
- set ylabel "GFlop/s"
 
- plot $gnuplotarg
 
- EOF
 
 
  |