]> git.llucax.com Git - software/dgc/dgcbench.git/blob - mempat-run.sh
Create time/pause sub-directories in ./build
[software/dgc/dgcbench.git] / mempat-run.sh
1 #!/bin/sh
2
3 args_voronoi="-n 30000"
4 args_sbtree="16"
5 args_split="micro/bible.txt 2"
6 args_em3d="-n 4000 -d 300 -i 74"
7 args_bh="-b 4000"
8 # Using up to -c 1048575 takes ~2.5s (and uses ~256KiB),
9 # using -c 1048576 takes ~9s (and uses ~512KiB)
10 args_tsp="-c 1000000"
11 # Same as tsp but the limit is between 209000 and 2100000,
12 # the memory usage and time doubles (from ~3s/~128KiB to ~6s/256KiB)
13 args_bisort="-s 2000000"
14
15 tango_files=`find ../tango/tango -name '*.d' -o -name '*.di' | grep -v invariant`
16 args_dil="ddoc /tmp/tangodoc -hl --kandil -version=Tango -version=TangoDoc"
17 args_dil="$args_dil -version=Posix -version=linux $tango_files"
18
19 NAMES=${NAMES:-`echo ./micro/*.d | xargs -n1 sh -c 'basename $0 .d'` dil}
20
21 gc=cdgc
22
23 mkdir -p ./build/$gc/mempat
24
25 make -srj4 micro-gc-build dil-gc-build
26 for name in $NAMES
27 do
28         prog="./build/$gc/bin/$name"
29         log="/tmp/$name.malloc.csv"
30         dst_txt="./build/$gc/mempat/$name.txt"
31         dst_tsv="./build/$gc/mempat/$name.tsv"
32         eval "args=\"\$args_$name\""
33         pa="$args"
34         test ${#args} -gt 40 &&
35                 pa="`echo $args | cut -b1-40`..."
36         echo -n "   RUN     $name $pa"
37         D_GC_OPTS=malloc_stats_file=$log $prog $args > /dev/null
38         echo
39         echo -n "   MEMPAT  $dst_txt"
40         ./mempat.py $log > $dst_txt
41         echo
42         echo -n "   MEMPAT  $dst_tsv"
43         ./mempat-tsv.py $log > $dst_tsv
44         echo
45 done
46