These are the results for Gerbil v0.18.2-pre (pre-release of v0.18.2), Gambit v4.9.5-130 (same as the Gerbil pin), and Racket v8.12.
This is based on ecraven's benchmarks, which seem unmaintained.
The benchmarks were run on a Dell XPS 13-9320 laptop.
Each benchmark was run 3 times, and I kept the best value.
There have been some modifications in the source relative to ecraven's benchmarks. Specifically:
The conform, maze and ray benchmarks have been modified to use records defined with define-record-type instead of vectors.
R7RS has record types for a reason and it is completely unreasonable to use vectors instead of records in the year 2024..
Color Coding: | best | within 10% | within 10-25% | within 25-50% | within 50-100% | within 100-200% | over 200% |
Benchmark | ⋄⋄⋄ | Gerbil R7RS safe | ⋄⋄⋄ | Gerbil R7RS unsafe | ⋄⋄⋄ | Gerbil idiomatic | ⋄⋄⋄ | Gambit safe | ⋄⋄⋄ | Racket R7RS |
---|---|---|---|---|---|---|---|---|---|---|
browse | .895272 (+37.3%) | .749277 (+14.9%) | .651944 ↻ | .902322 (+38.4%) | 1.794 (+175.1%) | |||||
deriv | 1.208174 (+5.7%) | 1.182414 (+3.4%) | 1.178738 (+3.1%) | 1.209399 (+5.8%) | 1.143 ↻ | |||||
destruc | 1.993492 (+40.7%) | 1.668991 (+17.8%) | 1.416508 ↻ | 1.975186 (+39.4%) | 2.269 (+60.1%) | |||||
diviter | 1.507604 (+3.8%) | 1.452258 ↻ | (no program) | 1.478105 (+1.7%) | 1.856 (+27.8%) | |||||
divrec | 2.307236 (+6.8%) | 2.159228 ↻ | (no program) | 2.300408 (+6.5%) | 2.636 (+22.%) | |||||
puzzle | 2.710697 (+151.9%) | 1.580869 (+46.9%) | 1.075914 ↻ | 2.844917 (+164.4%) | 1.969 (+83.%) | |||||
triangl | 1.880691 (+86.2%) | 1.161817 (+15.%) | 1.009914 ↻ | 1.91303 (+89.4%) | 1.61 (+59.4%) | |||||
tak | 1.176307 (+33.6%) | 1.379905 (+56.7%) | .880359 ↻ | 1.299402 (+47.5%) | 1.012 (+14.9%) | |||||
takl | 1.587941 (+47.%) | 1.115643 (+3.2%) | 1.080078 ↻ | 1.597305 (+47.8%) | 3.018 (+179.4%) | |||||
ntakl | 1.562952 (+40.7%) | 1.110204 ↻ | (no program) | 1.605096 (+44.5%) | 3.068 (+176.3%) | |||||
cpstak | 3.191026 (+29.5%) | 3.114418 (+26.3%) | 2.464085 ↻ | 3.066803 (+24.4%) | 2.596 (+5.3%) | |||||
ctak | 1.444491 (+2.1%) | 1.51986 (+7.4%) | 1.413866 ↻ | 1.550393 (+9.6%) | 1.423 (+.6%) | |||||
fib | 2.17808 (+14.6%) | 2.306984 (+21.4%) | (no program) | 1.899826 ↻ | 2.623 (+38.%) | |||||
fibc | 1.031808 (+7.8%) | 1.016992 (+6.2%) | (no program) | 1.06678 (+11.4%) | 0.957 ↻ | |||||
fibfp | 1.047403 (+.8%) | 1.038667 ↻ | (no program) | 1.078556 (+3.8%) | 1.93 (+85.8%) | |||||
sum | 1.697125 (+0.%) | 1.696565 ↻ | (no program) | 1.698843 (+.1%) | 2.049 (+20.7%) | |||||
sumfp | 1.68882 ↻ | 1.767821 (+4.6%) | (no program) | 1.732409 (+2.5%) | 2.281 (+35.%) | |||||
fft | .852732 (+248.1%) | .710904 (+190.2%) | .24491 ↻ | .843716 (+244.5%) | 1.252 (+411.2%) | |||||
mbrot | 2.214566 (+94.5%) | 2.180498 (+91.5%) | 1.138062 ↻ | 2.223844 (+95.4%) | 3.679 (+223.2%) | |||||
mbrotZ | 6.449705 (+265.7%) | 5.732755 (+225.1%) | 1.763186 ↻ | 6.072199 (+244.3%) | 3.438 (+94.9%) | |||||
nucleic | 1.255572 (+40.4%) | .894206 ↻ | (no program) | 1.317982 (+47.3%) | 1.4 (+56.5%) | |||||
pi | .608658 (+34.3%) | .61041 (+34.7%) | (no program) | .607325 (+34.%) | 0.453 ↻ | |||||
pnpoly | 2.161187 (+53.7%) | 1.405699 ↻ | (no program) | 2.170967 (+54.4%) | 3.332 (+137.%) | |||||
ray | 1.197922 (+219.2%) | .914911 (+143.8%) | .37524 ↻ | 1.130326 (+201.2%) | 7.587 (+1921.9%) | |||||
simplex | 1.597749 (+76.9%) | .903149 ↻ | (no program) | 1.51373 (+67.6%) | 1.617 (+79.%) | |||||
ack | 1.908582 (+6.5%) | 1.84817 (+3.2%) | (no program) | 1.790684 ↻ | 1.996 (+11.4%) | |||||
array1 | 2.403578 (+64.6%) | 1.45974 ↻ | (no program) | 2.333333 (+59.8%) | 6.026 (+312.8%) | |||||
string | .970312 (+1.6%) | .954131 ↻ | (no program) | .996953 (+4.4%) | 1.559 (+63.3%) | |||||
sum1 | .361556 (+13.5%) | .318485 ↻ | (no program) | .355546 (+11.6%) | 9.36 (+2838.9%) | |||||
cat | 1.313482 (+24.7%) | 1.053087 ↻ | (no program) | 1.331804 (+26.4%) | 3.63 (+244.7%) | |||||
tail | 1.530952 ↻ | 1.540101 (+.5%) | (no program) | 1.572151 (+2.6%) | 2.157 (+40.8%) | |||||
wc | 1.185415 (+37.3%) | .986351 (+14.2%) | .863069 ↻ | 1.203652 (+39.4%) | 2.617 (+203.2%) | |||||
read1 | .77623 (+1.7%) | .783441 (+2.6%) | (no program) | .763071 ↻ | 9.705 (+1171.8%) | |||||
conform | 1.51447 (+20.6%) | 1.255691 ↻ | (no program) | 1.770718 (+41.%) | 7.205 (+473.7%) | |||||
dynamic | 2.667366 (+10.5%) | 2.413654 ↻ | (no program) | 2.765762 (+14.5%) | 8.025 (+232.4%) | |||||
earley | 2.795528 (+2.5%) | 2.726026 ↻ | (no program) | 2.859218 (+4.8%) | 6.862 (+151.7%) | |||||
graphs | 4.843321 (+193.8%) | 4.509785 (+173.6%) | 1.647979 ↻ | 4.82012 (+192.4%) | 1.817 (+10.2%) | |||||
lattice | 3.404958 (+66.3%) | 2.722365 (+32.9%) | 2.04733 ↻ | 3.44717 (+68.3%) | 2.537 (+23.9%) | |||||
matrix | 1.321673 (+36.3%) | 1.132558 (+16.8%) | .969287 ↻ | 1.30743 (+34.8%) | 0.991 (+2.2%) | |||||
maze | .683375 (+14.4%) | .597191 ↻ | (no program) | .653986 (+9.5%) | 2.11 (+253.3%) | |||||
mazefun | 1.965208 (+29.3%) | 1.51882 ↻ | (no program) | 1.743225 (+14.7%) | 1.993 (+31.2%) | |||||
nqueens | 5.818397 (+36.8%) | 5.387034 (+26.6%) | 4.252204 ↻ | 5.901721 (+38.7%) | 4.459 (+4.8%) | |||||
paraffins | 2.566593 ↻ | 2.705443 (+5.4%) | (no program) | 2.879662 (+12.1%) | 8.898 (+246.6%) | |||||
parsing | 1.494598 (+7.9%) | 1.385074 ↻ | (no program) | 1.490819 (+7.6%) | 1.476 (+6.5%) | |||||
peval | 1.618721 (+16.1%) | 1.393667 ↻ | (no program) | 1.665395 (+19.4%) | 1.607 (+15.3%) | |||||
primes | .661144 (+16.1%) | .569442 ↻ | (no program) | .663323 (+16.4%) | 0.665 (+16.7%) | |||||
quicksort | 3.68697 (+31.8%) | 2.963969 (+6.%) | 2.795854 ↻ | 3.635736 (+30.%) | 7.74 (+176.8%) | |||||
scheme | 2.87649 (+20.3%) | 2.411425 (+.8%) | (no program) | 2.664598 (+11.4%) | 2.39 ↻ | |||||
slatex | 2.14022 (+7.1%) | 1.997593 ↻ | (no program) | 2.133455 (+6.8%) | 5.936 (+197.1%) | |||||
chudnovsky | .244475 (+24.%) | .240932 (+22.3%) | (no program) | .245553 (+24.6%) | 0.197 ↻ | |||||
nboyer | 2.270697 (+7.8%) | 2.106296 ↻ | (no program) | 2.32705 (+10.4%) | 3.297 (+56.5%) | |||||
sboyer | .921842 (+23.5%) | .746092 ↻ | (no program) | .96212 (+28.9%) | 0.852 (+14.1%) | |||||
gcbench | 1.336526 (+1.8%) | 1.312078 ↻ | (no program) | 5.234919 (+298.9%) | 2.296 (+74.9%) | |||||
mperm | 4.319952 (+3.9%) | 4.156262 ↻ | (no program) | 4.271193 (+2.7%) | 20.294 (+388.2%) | |||||
equal | .238156 (+.9%) | .239293 (+1.3%) | (no program) | .235997 ↻ | 1.592 (+574.5%) | |||||
bv2string | 1.000905 (+6.2%) | .942103 ↻ | (no program) | 1.144078 (+21.4%) | 1.471 (+56.1%) |