The following tables contain the execution time of the Gambit benchmarks on various implementations of Scheme. For a given benchmark, the entry in green indicates which Scheme system has the fastest execution and the number given is the time in milliseconds. Other entries give the execution time relative to the green entry. Blank entries indicate that this benchmark was not executed (possibly because the system did not accept to compile the program).
The first table gives CPU time and the second gives real time.
Gambit was configured with the following options, and had the following build times:
60 13:58 ./configure 'CC=gcc -march=native' '--enable-single-host' time make -j 8 155.664u 2.148s 0:28.20 559.5% 0+0k 0+208520io 0pf+0w 72 14:07 ./configure 'CC=gcc -march=native' 75 14:08 time make -j 8 112.940u 1.996s 0:18.92 607.4% 0+0k 0+224008io 0pf+0w 83 14:13 ./configure 'CC=gcc -march=native' --enable-single-host --enable-c-opt 85 14:14 time make -j 8 460.832u 4.144s 1:14.85 621.2% 0+0k 536+209880io 1pf+0w 94 14:20 ./configure 'CC=gcc -march=native' --enable-c-opt 96 14:20 time make -j 8 204.692u 2.636s 0:40.25 515.0% 0+0k 0+231584io 0pf+0w 106 14:28 ./configure 'CC=gcc -march=native --param max-gcse-memory=1000000000' --enable-single-host --enable-c-opt 108 14:28 time make -j 8 554.720u 4.488s 1:56.79 478.8% 0+0k 0+209288io 0pf+0w
The versions of Gambit and gcc were:
> ../gsi/gsi -v v4.8.1 20151107160744 x86_64-unknown-linux-gnu "./configure 'CC=gcc -march=native --param max-gcse-memory=1000000000' '--enable-single-host' '--enable-c-opt'" > gcc -v Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper Target: x86_64-linux-gnu stuff deleted Thread model: posix gcc version 5.2.1 20151010 (Ubuntu 5.2.1-22ubuntu2) > cat /proc/cpuinfo model name : Intel(R) Xeon(R) CPU E3-1271 v3 @ 3.60GHz cache size : 8192 KB
Program | no-single-host | no-single-host.c-opt | single-host | single-host.c-opt | single-host.c-opt.max-gcse-memory |
succeed
|
0 | 0 | 0 | 0 | 0 |
fail
|
|||||
crash
|
|||||
browse
|
1.40 | 1.16 | 1.35 | 1.01 | 684 |
cpstak
|
1.09 | 256 | 1.22 | 1.02 | 256 |
ctak
|
1.15 | 296 | 1.34 | 1.11 | 1.08 |
dderiv
|
2.43 | 1.76 | 1.23 | 1.03 | 316 |
deriv
|
1.06 | 1.06 | 1.04 | 1.01 | 268 |
destruc
|
1.09 | 256 | 1.17 | 1.19 | 1.19 |
diviter
|
1.03 | 1.03 | 1.14 | 292 | 1.07 |
divrec
|
1.06 | 1.01 | 1.02 | 396 | 1.02 |
puzzle
|
1.27 | 1.16 | 1.11 | 148 | 1.03 |
takl
|
2.05 | 1.69 | 1.21 | 156 | 156 |
trav1
|
1.23 | 1.21 | 1.09 | 1.02 | 172 |
trav2
|
664 | 1.01 | 1.02 | 1.01 | 1.01 |
triangl
|
1.12 | 268 | 1.15 | 1.07 | 1.09 |
fft
|
76 | 76 | 1.05 | 1.05 | 76 |
fib
|
1.42 | 160 | 1.68 | 1.30 | 1.30 |
fibfp
|
1.18 | 160 | 1.35 | 1.02 | 1.02 |
mbrot
|
1.03 | 1.05 | 1.03 | 148 | 148 |
nucleic
|
1.43 | 1.36 | 56 | 56 | 56 |
pnpoly
|
1.33 | 1.20 | 1.20 | 60 | 60 |
sum
|
1.06 | 68 | 1.29 | 1.24 | 1.24 |
sumfp
|
1.01 | 1.01 | 1.02 | 664 | 1.02 |
tak
|
1.50 | 176 | 1.52 | 1.20 | 1.20 |
tfib
|
1.49 | 1.32 | 1.14 | 408 | 1.07 |
ack
|
1.17 | 140 | 1.17 | 1.06 | 1.09 |
array1
|
64 | 64 | 1.19 | 64 | 64 |
cat
|
1.28 | 240 | 1.47 | 1.42 | 1.45 |
string
|
1.03 | 288 | 1.07 | 1.01 | 1.04 |
sum1
|
1.53 | 1.30 | 1.08 | 348 | 1.10 |
sumloop
|
1.01 | 1.00 | 1.01 | 1512 | 1512 |
tail
|
1.15 | 216 | 1.33 | 1.28 | 1.35 |
wc
|
1.26 | 124 | 1.35 | 1.32 | 1.35 |
conform
|
2.55 | 2.25 | 1.34 | 224 | 224 |
dynamic
|
1.22 | 1.18 | 1.04 | 204 | 1.02 |
earley
|
1.10 | 208 | 1.17 | 1.06 | 1.04 |
fibc
|
1.25 | 1.04 | 1.18 | 1.04 | 228 |
graphs
|
2.03 | 1.88 | 1.21 | 268 | 268 |
lattice
|
2.52 | 2.10 | 1.43 | 448 | 1.01 |
matrix
|
1.88 | 1.73 | 1.24 | 332 | 1.02 |
maze
|
2.19 | 1.76 | 1.24 | 148 | 148 |
mazefun
|
1.80 | 1.58 | 1.12 | 256 | 256 |
nqueens
|
1.09 | 264 | 1.33 | 1.05 | 1.05 |
paraffins
|
1.04 | 1.01 | 1.14 | 1.02 | 684 |
peval
|
1.81 | 1.55 | 1.06 | 276 | 1.01 |
pi
|
1.49 | 1.34 | 1.05 | 436 | 1.03 |
primes
|
1.10 | 432 | 1.18 | 1.11 | 1.09 |
ray
|
1.42 | 1.38 | 96 | 1.04 | 1.04 |
scheme
|
3.22 | 2.91 | 1.25 | 316 | 1.01 |
simplex
|
1.13 | 92 | 1.17 | 92 | 92 |
slatex
|
1.18 | 156 | 156 | 1.03 | 1.08 |
perm9
|
1.09 | 1.03 | 1.12 | 1.09 | 272 |
nboyer
|
1.11 | 1.01 | 1.25 | 1.11 | 292 |
sboyer
|
1.24 | 204 | 1.31 | 1.16 | 1.08 |
gcbench
|
1.32 | 536 | 1.37 | 1.26 | 1.19 |
Program | no-single-host | no-single-host.c-opt | single-host | single-host.c-opt | single-host.c-opt.max-gcse-memory |
succeed
|
0 | 0 | 0 | 0 | 0 |
fail
|
|||||
crash
|
|||||
browse
|
1.40 | 1.16 | 1.35 | 1.01 | 684 |
cpstak
|
1.11 | 254 | 1.22 | 1.02 | 1.01 |
ctak
|
1.16 | 294 | 1.34 | 1.12 | 1.09 |
dderiv
|
2.42 | 1.76 | 1.22 | 1.02 | 317 |
deriv
|
1.05 | 1.06 | 1.05 | 1.01 | 269 |
destruc
|
1.09 | 257 | 1.18 | 1.18 | 1.18 |
diviter
|
1.02 | 1.03 | 1.14 | 292 | 1.07 |
divrec
|
1.06 | 1.01 | 1.02 | 395 | 1.01 |
puzzle
|
1.29 | 1.16 | 1.11 | 1.01 | 147 |
takl
|
2.06 | 1.68 | 1.22 | 156 | 156 |
trav1
|
1.23 | 1.22 | 1.08 | 1.02 | 171 |
trav2
|
667 | 667 | 1.02 | 1.00 | 1.00 |
triangl
|
1.11 | 268 | 1.14 | 1.08 | 1.09 |
fft
|
73 | 1.03 | 1.07 | 1.08 | 1.03 |
fib
|
1.43 | 159 | 1.67 | 1.30 | 1.30 |
fibfp
|
1.18 | 157 | 1.38 | 1.03 | 1.03 |
mbrot
|
1.02 | 1.05 | 1.03 | 148 | 1.01 |
nucleic
|
1.40 | 1.38 | 1.04 | 55 | 1.02 |
pnpoly
|
1.34 | 1.22 | 1.22 | 1.02 | 58 |
sum
|
1.06 | 66 | 1.30 | 1.29 | 1.29 |
sumfp
|
1.01 | 1.00 | 1.01 | 666 | 1.02 |
tak
|
1.49 | 177 | 1.51 | 1.20 | 1.19 |
tfib
|
1.49 | 1.33 | 1.14 | 408 | 1.07 |
ack
|
1.17 | 139 | 1.17 | 1.07 | 1.08 |
array1
|
1.05 | 62 | 1.19 | 1.03 | 1.03 |
cat
|
1.29 | 240 | 1.47 | 1.41 | 1.46 |
string
|
1.03 | 289 | 1.06 | 1.01 | 1.04 |
sum1
|
1.52 | 1.29 | 1.07 | 349 | 1.10 |
sumloop
|
1.00 | 1.00 | 1.01 | 1513 | 1513 |
tail
|
1.16 | 216 | 1.33 | 1.29 | 1.35 |
wc
|
1.28 | 123 | 1.37 | 1.32 | 1.37 |
conform
|
2.55 | 2.25 | 1.35 | 224 | 1.00 |
dynamic
|
1.21 | 1.17 | 1.04 | 204 | 1.01 |
earley
|
1.11 | 206 | 1.17 | 1.06 | 1.04 |
fibc
|
1.24 | 1.03 | 1.16 | 1.02 | 229 |
graphs
|
2.03 | 1.89 | 1.21 | 1.00 | 267 |
lattice
|
2.52 | 2.10 | 1.42 | 448 | 1.00 |
matrix
|
1.89 | 1.74 | 1.25 | 331 | 1.02 |
maze
|
2.20 | 1.76 | 1.24 | 147 | 147 |
mazefun
|
1.80 | 1.59 | 1.13 | 254 | 1.00 |
nqueens
|
1.10 | 263 | 1.33 | 1.05 | 1.05 |
paraffins
|
1.04 | 1.01 | 1.14 | 1.02 | 684 |
peval
|
1.79 | 1.54 | 1.04 | 278 | 1.01 |
pi
|
1.48 | 1.34 | 1.05 | 436 | 1.03 |
primes
|
1.10 | 430 | 1.18 | 1.12 | 1.10 |
ray
|
1.42 | 1.34 | 96 | 1.03 | 1.04 |
scheme
|
3.24 | 2.93 | 1.26 | 313 | 1.02 |
simplex
|
1.15 | 89 | 1.20 | 1.01 | 1.02 |
slatex
|
1.20 | 154 | 1.01 | 1.05 | 1.08 |
perm9
|
1.08 | 1.02 | 1.11 | 1.09 | 273 |
nboyer
|
1.10 | 1.01 | 1.24 | 1.10 | 293 |
sboyer
|
1.23 | 203 | 1.31 | 1.17 | 1.09 |
gcbench
|
1.32 | 534 | 1.37 | 1.27 | 1.19 |