run.sh: sync up with model-checker improvements
[model-checker-benchmarks.git] / bench.sh
index dca26dafd1d5af91ab180ebc3ef237169709c573..7c9eec856f0b3158cc5997422ba9c7d56479aa98 100755 (executable)
--- a/bench.sh
+++ b/bench.sh
@@ -1,20 +1,10 @@
 #!/bin/bash
 
 # A (work-in-progress) test script for running our benchmarks
-# Runs all tests, logging output to a directory named
-# '${BASEDIR}/run-<date-time>', where ${BASEDIR} is either the current
-# directory or the first parameter to this script
-
-## Unfinished benchmarks - do not use
-# queue williams-queue
+# Runs all tests, with timing information
 
 DATECMD="date +%Y-%m-%d-%R"
 DATE="`${DATECMD}`"
-BASEDIR=.
-
-[ $# -gt 0 ] && [ -d "$1" ] && BASEDIR="$1" && shift
-
-DIR="${BASEDIR}/run-${DATE}"
 
 TESTS="chase-lev-deque/main"
 TESTS+=" spsc-queue/spsc-queue"
@@ -40,14 +30,13 @@ function run_test {
        shift
        ARGS="$@"
        RUN="./run.sh"
-       LOG=${DIR}/log-${COUNT}
 
        echo "-----------------------------------------------"
        echo "*******************************"
-       echo "Running test ${COUNT} (${t}): logging to ${LOG}"
+       echo "Running test ${COUNT} (${t})"
        echo "ARGS=${ARGS}"
        echo "*******************************"
-       (time ${RUN} ${t} ${ARGS} 2>&1) 2>&1 | tee ${LOG}
+       (time ${RUN} ${t} ${ARGS} 2>&1) 2>&1
        echo
        echo "Test done; sleeping for a few seconds"
        echo
@@ -67,5 +56,16 @@ function run_all_tests {
        #run_test mpmc-queue/mpmc-queue ${MODEL_ARGS} -- -r 2 -w 2
 }
 
-mkdir ${DIR}
-(cd ..; git log --oneline -1; cd - > /dev/null; git log --oneline -1; echo; run_all_tests) | tee ${DIR}/timing.log
+# Check if git is available, and this is a git repository
+GIT=0
+which git &> /dev/null && git rev-parse &> /dev/null && GIT=1
+
+# Print out some git information, if available
+if [ ${GIT} -ne 0 ]; then
+       cd ..
+       git log --oneline -1
+       cd - > /dev/null
+       git log --oneline -1
+       echo
+fi
+run_all_tests