865c44a246e547c81ebef4f21a3cc3ec9b83327b
[tsan11-tsan11rec-docker.git] / scripts / run.sh
1 #!/bin/bash
2   
3 GDAXLIB="./dependencies/libcds-2.3.2/build-release/bin"
4 GDAXDIR="gdax-orderbook-hpp/demo"
5
6 MABAINLIB="../src"
7 MABAINDIR="mabain/examples"
8
9 JSBENCH_DIR="jsbench-2013.1"
10 JSEXE_PATH="/data/tsan11-benchmarks/js"
11
12 TESTS="gdax silo mabain iris jsbench"
13
14 TOTAL_RUN=$1
15
16 REDUNDANT="jemalloc.stats log.txt"
17
18 function run_gdax_test {
19         cd ${GDAXDIR}
20         export LD_LIBRARY_PATH="${GDAXLIB}"
21
22         for i in `seq 1 1 $TOTAL_RUN`
23         do
24                 echo "round ${i}"
25                 ./demo 120
26         done
27         cd ../..
28 }
29
30 function run_silo_test {
31         for i in `seq 1 1 $TOTAL_RUN`
32         do
33                 echo "round ${i}"
34                 ./silo/out-perf.masstree/benchmarks/dbtest --verbose -t 5
35         done
36 }
37
38 function run_mabain_test {
39         cd ${MABAINDIR}
40         export LD_LIBRARY_PATH="${MABAINLIB}"
41
42         for i in `seq 1 1 $TOTAL_RUN`
43         do
44                 echo "round ${i}"
45                 rm ./multi_test/* 2> /dev/null
46                 time ./mb_multi_thread_insert_test
47         done
48         cd ../..
49 }
50
51 function run_iris_test {
52         for i in `seq 1 1 $TOTAL_RUN`
53         do
54                 echo "round ${i}"
55                 time ./iris/test_lfringbuffer
56         done
57 }
58
59 function run_jsbench_test {
60         cd ${JSBENCH_DIR}
61         python ./harness.py ${JSEXE_PATH} ${TOTAL_RUN}
62         cd ..
63 }
64
65 function run_all_tests {
66         for t in ${TESTS}
67         do
68                 echo "running ${t}"
69                 (run_${t}_test 2>&1) > "${t}.log"
70 #               run_${t}_test &> "${t}.log"
71         done
72 }
73
74 # Remove previous output files
75 rm *.log 2> /dev/null
76 rm $REDUNDANT 2> /dev/null
77
78 run_all_tests