add scripts and key
[tsan11-tsan11rec-docker.git] / scripts / run.sh
diff --git a/scripts/run.sh b/scripts/run.sh
new file mode 100755 (executable)
index 0000000..865c44a
--- /dev/null
@@ -0,0 +1,78 @@
+#!/bin/bash
+  
+GDAXLIB="./dependencies/libcds-2.3.2/build-release/bin"
+GDAXDIR="gdax-orderbook-hpp/demo"
+
+MABAINLIB="../src"
+MABAINDIR="mabain/examples"
+
+JSBENCH_DIR="jsbench-2013.1"
+JSEXE_PATH="/data/tsan11-benchmarks/js"
+
+TESTS="gdax silo mabain iris jsbench"
+
+TOTAL_RUN=$1
+
+REDUNDANT="jemalloc.stats log.txt"
+
+function run_gdax_test {
+       cd ${GDAXDIR}
+       export LD_LIBRARY_PATH="${GDAXLIB}"
+
+       for i in `seq 1 1 $TOTAL_RUN`
+       do
+               echo "round ${i}"
+               ./demo 120
+       done
+       cd ../..
+}
+
+function run_silo_test {
+       for i in `seq 1 1 $TOTAL_RUN`
+       do
+               echo "round ${i}"
+               ./silo/out-perf.masstree/benchmarks/dbtest --verbose -t 5
+       done
+}
+
+function run_mabain_test {
+       cd ${MABAINDIR}
+       export LD_LIBRARY_PATH="${MABAINLIB}"
+
+       for i in `seq 1 1 $TOTAL_RUN`
+       do
+               echo "round ${i}"
+               rm ./multi_test/* 2> /dev/null
+               time ./mb_multi_thread_insert_test
+       done
+       cd ../..
+}
+
+function run_iris_test {
+       for i in `seq 1 1 $TOTAL_RUN`
+       do
+               echo "round ${i}"
+               time ./iris/test_lfringbuffer
+       done
+}
+
+function run_jsbench_test {
+       cd ${JSBENCH_DIR}
+       python ./harness.py ${JSEXE_PATH} ${TOTAL_RUN}
+       cd ..
+}
+
+function run_all_tests {
+       for t in ${TESTS}
+       do
+               echo "running ${t}"
+               (run_${t}_test 2>&1) > "${t}.log"
+#              run_${t}_test &> "${t}.log"
+       done
+}
+
+# Remove previous output files
+rm *.log 2> /dev/null
+rm $REDUNDANT 2> /dev/null
+
+run_all_tests