File: runbench.sh

package info (click to toggle)
chicken 5.3.0-2
  • links: PTS
  • area: main
  • in suites: forky, sid, trixie
  • size: 32,892 kB
  • sloc: ansic: 580,083; lisp: 71,987; tcl: 1,445; sh: 588; makefile: 60
file content (72 lines) | stat: -rwxr-xr-x 1,836 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
#!/bin/sh
# runbench.sh - run benchmarks
#
# - Note: this needs a proper shell, so it will not work with plain mingw
#   (just the compiler and the Windows shell, without MSYS)

set -e
TEST_DIR=`pwd`
export DYLD_LIBRARY_PATH=${TEST_DIR}/..
export LD_LIBRARY_PATH=${TEST_DIR}/..

echo 

CHICKEN=../chicken
COMPILE_OPTIONS="-O5 -d0 -disable-interrupts -b"

if test -n "$MSYSTEM"; then
    CHICKEN="..\\chicken.exe"
    # make compiled tests use proper library on Windows
    cp ../lib*chicken*.dll .
fi

case `uname -s` in
    *BSD*|*bsd*) timeopts="-c";;
    Darwin) timeopts="";;
    *) timeopts='-f "%E elapsed, %U user, %S system"'
esac

run()
{
    /usr/bin/time "$timeopts" ./a.out "$1" "$2" "$3"
}

echo "****************************************"

compiler_options="-C -Wa,-W"
compile="../csc -w -compiler $CHICKEN -I.. -L.. -include-path .. -o a.out $COMPILE_OPTIONS"
interpret="../csi -n -include-path .."

echo "======================================== null ... "
$compile null.scm -O5
run -:Hd

echo "======================================== compilation ... "
/usr/bin/time "$timeopts" $compile compiler.scm

echo "======================================== compiler ... "
run -:Hd

echo "======================================== slatex ... "
$compile slatex.scm
mkdir -p slatexdir
rm -f slatexdir/*
run

echo "======================================== grep ... "
$compile sgrep.scm
run compiler.scm

echo "======================================== fft/boxed ... "
$compile fft.scm
run 2000 11
echo "======================================== fft/unboxed ... "
$compile fft.scm -D unboxed
run 2000 11

echo "======================================== allocation ... "
$compile gobble.scm
run 1000000000

echo "======================================== irregex ... "
/usr/bin/time "$timeopts" $interpret -bnq test-irregex.scm >/dev/null