--- /dev/null
+#!/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