X-Git-Url: http://nitlanguage.org diff --git a/benchmarks/bench_languages.sh b/benchmarks/bench_languages.sh index d9db525..0e0b59a 100755 --- a/benchmarks/bench_languages.sh +++ b/benchmarks/bench_languages.sh @@ -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 <