diff options
Diffstat (limited to 'test/benchmarks/bench')
-rwxr-xr-x | test/benchmarks/bench | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/test/benchmarks/bench b/test/benchmarks/bench new file mode 100755 index 0000000000..b441b283f8 --- /dev/null +++ b/test/benchmarks/bench @@ -0,0 +1,57 @@ + +################################################################# +# +# A simple script used to rebuild benchmarks using fsc and then run them. +# If you need to rebuild, use: +# +# ./bench <arguments> +# +# Omitting <arguments> will print more information. +# If you don't want to rebuild: +# +# ./bench skip <same-args-as-above> +# +################################################################# + + +TOP_DIR=$PWD +SCALA_BUILD_DIR=../../build/pack +SRC_DIR=src/ +TARGET_DIR=target +CLASS_DIR=$TARGET_DIR/classes + +FSC=$SCALA_BUILD_DIR/bin/fsc +SCALA_LIBS_PATH=$SCALA_BUILD_DIR/lib +CLASSPATH=$SCALA_LIBS_PATH/scala-library.jar:lib/jsr166_and_extra.jar + +ARTIFACT=benchmarks.jar +ARTIFACT_PATH=$TARGET_DIR/$ARTIFACT + + +if [ "$1" != "skip" ] +then + # fetch source file list + find $SRC_DIR -name *.scala -print > source.list + + # recompile with fsc + $FSC -cp $CLASSPATH -d $CLASS_DIR @source.list + + # jar it up + rm $ARTIFACT_PATH + cd $CLASS_DIR + jar cf $ARTIFACT . + mv $ARTIFACT $TOP_DIR/$ARTIFACT_PATH + cd $TOP_DIR +fi + +# run a benchmark +RUNCOMMAND="java -Xms256m -Xmx512m -server -cp $CLASSPATH:$ARTIFACT_PATH scala.collection.parallel.Benchmarking " +if [ "$1" != skip ] +then + $RUNCOMMAND "$@" +else + $RUNCOMMAND $2 $3 $4 $5 $6 $7 $8 +fi + + + |