misc/vim: inform the user when no results are found
[nit.git] / benchmarks / bench_languages.sh
index d9db525..0e0b59a 100755 (executable)
@@ -17,6 +17,7 @@
 
 # TODO: cleanup and libify the helper-parts
 
+source ./bench_common.sh
 source ./bench_plot.sh
 
 ## CONFIGURATION OPTIONS ##
@@ -33,74 +34,6 @@ function die()
        died=1
 }
 
-# Run a single command multiple time and store the execution times
-# in the current $res file.
-#
-#  $1: title of the command
-#  $2: long desription of the command
-#  rest: the command to execute
-function bench_command()
-{
-       if [ "$dry_run" = "true" ]; then return; fi
-       local title="$1"
-       local desc="$2"
-       shift
-       shift
-       if test "$verbose" = true; then outputopts="/dev/stdout"; else outputopts="/dev/null"; fi
-       timeout="time.out"
-       echo "$title" > "$timeout"
-       echo "# $desc" >> "$timeout"
-       echo "\$ $@" >> "$timeout"
-       echo
-       echo "** [$title] $desc **"
-       echo " $ $@"
-
-       # Execute the commands $count times
-       for i in `seq 1 "$count"`; do
-               (ulimit -t 300; /usr/bin/time -f "%U" -o "$timeout" -a "$@") > $outputopts 2>&1 || die "$1: failed"
-               echo -n "$i. "
-               tail -n 1 "$timeout"
-       done
-
-       line=`compute_stats "$timeout"`
-       echo "$line ($res)"
-       echo $line >> "$res"
-       rm $timeout
-}
-
-# Run a simple command witout storing the execution time
-# Used to display command on verbose and skip long executions when dry_run is given
-# $@ command to execute
-function run_command()
-{
-       if [ "$dry_run" = "true" ]; then return; fi
-       echo " $ $@"
-       (ulimit -t 180; "$@") || die "$@: failed"
-}
-
-# Check if the test should be skiped according to its name
-# $1: name of the test
-# $2: description of the test
-# $NOTSKIPED: arguments
-function skip_test()
-{
-       if test -z "$NOTSKIPED"; then
-               echo "* $1"
-               return 0
-       fi
-       if test "$NOTSKIPED" = "all"; then
-               : # Execute anyway
-       elif echo "$1" | egrep "$NOTSKIPED" >/dev/null 2>&1; then
-               : # Found one to execute
-       else
-               return 0
-       fi
-       echo "*"
-       echo "* $1 *****"
-       echo "*"
-       return 1
-}
-
 ## HANDLE OPTIONS ##
 
 function usage()
@@ -137,7 +70,7 @@ fi
 cd ../src
 test -f ./nitc_3 || ./ncall.sh -O
 cd ../benchmarks
-test -f ./nitg || ../src/nitc_3 ../src/nitg.nit -O -v
+test -f ./nitc || ../src/nitc_3 ../src/nitc.nit -O -v
 
 ## EFFECTIVE BENCHS ##
 
@@ -154,7 +87,7 @@ function bench_language()
        s=20
        seq="2 4 8"
        for b in $seq; do
-               run_command ./nitg languages/$name.nit -o $basedir/$name.bin
+               run_command ./nitc languages/$name.nit -o $basedir/$name.bin
                run_command $basedir/$name.bin $basedir "${t}_$b" "$b"
        done
 
@@ -219,35 +152,35 @@ function bench_language()
        done
 
        nitdir="${basedir}/nit"
-       prepare_res $nitdir/$name-nitg.dat "nitg" "nitg"
+       prepare_res $nitdir/$name-nitc.dat "nitc" "nitc"
        for b in $seq; do
-               run_command ./nitg $nitdir/${t}_$b.nit --global -o "$nitdir/${t}_$b.nitg.bin" --make-flags "CFLAGS=\"-g -O2 -DNOBOEHM\""
-               bench_command "$b" "" "$nitdir/${t}_$b.nitg.bin" $s
+               run_command ./nitc $nitdir/${t}_$b.nit --global -o "$nitdir/${t}_$b.nitc.bin" --make-flags "CFLAGS=\"-g -O2 -DNOBOEHM\""
+               bench_command "$b" "" "$nitdir/${t}_$b.nitc.bin" $s
        done
 
-       prepare_res $nitdir/$name-nitg-s.dat "nitg-s" "nitg-s"
+       prepare_res $nitdir/$name-nitc-s.dat "nitc-s" "nitc-s"
        for b in $seq; do
-               run_command ./nitg $nitdir/${t}_$b.nit --separate -o "$nitdir/${t}_$b.nitg-s.bin" --make-flags "CFLAGS=\"-g -O2 -DNOBOEHM\""
-               bench_command "$b" "" "$nitdir/${t}_$b.nitg-s.bin" $s
+               run_command ./nitc $nitdir/${t}_$b.nit --separate -o "$nitdir/${t}_$b.nitc-s.bin" --make-flags "CFLAGS=\"-g -O2 -DNOBOEHM\""
+               bench_command "$b" "" "$nitdir/${t}_$b.nitc-s.bin" $s
        done
 
 <<XXX
-       prepare_res $nitdir/$name-nitg-su.dat "nitg-su" "nitg-su"
+       prepare_res $nitdir/$name-nitc-su.dat "nitc-su" "nitc-su"
        for b in $seq; do
-               run_command ./nitg $nitdir/${t}_$b.nit --separate --no-check-covariance -o "$nitdir/${t}_$b.nitg-su.bin" --make-flags "CFLAGS=\"-g -O2 -DNOBOEHM\""
-               bench_command "$b" "" "$nitdir/${t}_$b.nitg-su.bin" $s
+               run_command ./nitc $nitdir/${t}_$b.nit --separate --no-check-covariance -o "$nitdir/${t}_$b.nitc-su.bin" --make-flags "CFLAGS=\"-g -O2 -DNOBOEHM\""
+               bench_command "$b" "" "$nitdir/${t}_$b.nitc-su.bin" $s
        done
 
-       prepare_res $nitdir/$name-nitg-e.dat "nitg-e" "nitg-e"
+       prepare_res $nitdir/$name-nitc-e.dat "nitc-e" "nitc-e"
        for b in $seq; do
-               run_command ./nitg $nitdir/${t}_$b.nit --erasure -o "$nitdir/${t}_$b.nitg-e.bin" --make-flags "CFLAGS=\"-g -O2 -DNOBOEHM\""
-               bench_command "$b" "" "$nitdir/${t}_$b.nitg-e.bin" $s
+               run_command ./nitc $nitdir/${t}_$b.nit --erasure -o "$nitdir/${t}_$b.nitc-e.bin" --make-flags "CFLAGS=\"-g -O2 -DNOBOEHM\""
+               bench_command "$b" "" "$nitdir/${t}_$b.nitc-e.bin" $s
        done
 
-       prepare_res $nitdir/$name-nitg-eu.dat "nitg-eu" "nitg-eu"
+       prepare_res $nitdir/$name-nitc-eu.dat "nitc-eu" "nitc-eu"
        for b in $seq; do
-               run_command ./nitg $nitdir/${t}_$b.nit --erasure --no-check-covariance --no-check-erasure-cast -o "$nitdir/${t}_$b.nitg-eu.bin" --make-flags "CFLAGS=\"-g -O2 -DNOBOEHM\""
-               bench_command "$b" "" "$nitdir/${t}_$b.nitg-eu.bin" $s
+               run_command ./nitc $nitdir/${t}_$b.nit --erasure --no-check-covariance --no-check-erasure-cast -o "$nitdir/${t}_$b.nitc-eu.bin" --make-flags "CFLAGS=\"-g -O2 -DNOBOEHM\""
+               bench_command "$b" "" "$nitdir/${t}_$b.nitc-eu.bin" $s
        done
 XXX