All binarytrees problem benchmarks

Current benchmark data was generated on Thu May 01 2025, full log can be found HERE

CONTRIBUTIONS are WELCOME!

[x86_64][4 cores] AMD EPYC 7763 64-Core Processor (Model 1)

* -m in a file name stands for multi-threading or multi-processing

* -i in a file name stands for direct intrinsics usage. (Usage of simd intrinsics via libraries is not counted)

* -ffi in a file name stands for non-stdlib FFI usage

* (You may find time < time(user) + time(sys) for some non-parallelized programs, the overhead is from GC or JIT compiler, which are allowed to take advantage of multi-cores as that's more close to real-world scenarios.)

binarytrees

Input: 18

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
java 2.java 458ms 2.1ms 574.1MB 557ms 83ms openjdk 21
java 2.java 472ms 4.2ms 620.6MB 573ms 107ms openjdk 23
java 2-m.java 478ms 13ms 644.0MB 667ms 127ms graal/jvm 17.0.8
kotlin 1.kt 492ms 10ms 578.8MB 590ms 93ms kotlin/jvm 21
dart 1.dart 697ms 3.5ms 80.8MB 670ms 33ms dart/exe 3.7.3
v 1.v 768ms 17ms 28.9MB 750ms 0ms v/clang+gc 0.4.10
nim 2.nim 775ms 6.2ms 33.9MB 757ms 10ms nim 2.2.4
csharp 1.cs 943ms 22ms 185.3MB 937ms 150ms dotnet 9.0.203
nim 2.nim 953ms 12ms 35.2MB 933ms 7ms nim/clang 2.2.4
csharp 1.cs 955ms 17ms 188.9MB 957ms 143ms dotnet/aot 9.0.203
javascript 1-m.js 961ms 19ms 189.3MB 1440ms 253ms bun 1.2.11
typescript 1.ts 1067ms 12ms 466.8MB 997ms 217ms deno 2.3.1
python 1.py 1163ms 3.7ms 96.4MB 1093ms 57ms pypy 3.10.16
java 2.java 1199ms 18ms 1054.6MB 590ms 770ms openjdk/zgc 21
go 1.go 1220ms 11ms 55.0MB 1197ms 10ms tinygo 0.37.0
crystal 1.cr 1235ms 5.9ms 64.2MB 1210ms 10ms crystal 1.16.2
javascript 1-m.js 1237ms 36ms 250.6MB 2120ms 157ms node 23.11.0
rust 4.rs 1262ms 11ms 33.8MB 1240ms 10ms rustc 1.86.0
haxe 1.hx 1318ms 6.6ms 144.0MB 1503ms 67ms haxe/cpp 4.3.6
rust 5.rs 1330ms 3.4ms 33.8MB 1307ms 13ms rustc 1.86.0
rust 3.rs 1471ms 55ms 49.8MB 1440ms 17ms rustc 1.86.0
csharp 1.cs 1699ms 20ms 101.5MB 1897ms 217ms mono 6.12.0
zig 1.zig 1721ms 8.7ms 49.0MB 1690ms 17ms zig 0.14.0
wasm 5.rs 1774ms 4.7ms 33.7MB 1757ms 7ms wasmtime 32.0.0
d 1.d 1779ms 14ms 312.5MB 1757ms 30ms ldc2 1.40.1
wasm 3.rs 1818ms 20ms 49.7MB 1790ms 13ms wasmtime 32.0.0
wasm 4.rs 1821ms 4.3ms 33.8MB 1803ms 7ms wasmtime 32.0.0
chapel 4.chpl 1953ms 5.8ms 62.4MB 1947ms 0ms chpl 1.31.0
chapel 3.chpl 2034ms 5.7ms 62.3MB 2027ms 0ms chpl 1.31.0
v 1.v 2185ms 4.8ms 2086.6MB 1287ms 883ms v/clang 0.4.10
odin 1.odin 2300ms 35ms 49.5MB 2267ms 17ms odin 2024
go 1-m.go 2348ms 15ms 40.2MB 5240ms 33ms go 1.24.2
swift 1.swift 2603ms 10ms 53.8MB 2570ms 20ms swift 6.1.0
d 1.d 3014ms 3.4ms 315.0MB 3180ms 50ms dmd 2.111.0
ocaml 1.ml 3316ms 13ms 157.1MB 3237ms 67ms ocaml 5.3.0
lua 1.lua 3518ms 55ms 172.8MB 3373ms 130ms luajit 2.1.0-beta3
kotlin 1.kt 3846ms 34ms 144.1MB 4020ms 77ms kotlin/native 2.1.20
haxe 2.hx 4426ms 25ms 495.3MB 5017ms 260ms haxe/cpp 4.3.6
ruby 1.rb 4679ms 84ms 150.6MB 4570ms 97ms ruby/yjit 3.4.3
acton 1.act timeout 0.0ms 66.9MB 5943ms 87ms actonc 0.25.0
haxe 1.hx timeout 0.0ms 48.6MB 5480ms 430ms haxe/hl/c 4.3.6
haxe 2.hx timeout 0.0ms 83.0MB 4927ms 717ms haxe/hl/c 4.3.6
haxe 1.hx timeout 0.0ms 50.9MB 7453ms 437ms haxe/hl/jit 1.15.0
haxe 2.hx timeout 0.0ms 130.9MB 7437ms 773ms haxe/hl/jit 1.15.0
lua 1.lua timeout 0.0ms 104.8MB 4943ms 40ms lua 5.4.7
perl 1.pl timeout 0.0ms 77.8MB 4963ms 27ms perl 5.40.2
php 1.php timeout 0.0ms 141.6MB 4963ms 27ms php 8.2.28
python 1.py timeout 0.0ms 41.0MB 4967ms 20ms cpython 3.13.3
python 1.py timeout 0.0ms 40.6MB 4747ms 240ms pyston 3.8.12
ruby 1.rb timeout 0.0ms 70.0MB 4950ms 40ms ruby 3.4.3
ruby 1.rb timeout 0.0ms 780.8MB 6557ms 723ms truffleruby 24.2.1

Input: 15

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
v 1.v 71ms 2.4ms 4.6MB 60ms 0ms v/clang+gc 0.4.10
dart 1.dart 74ms 0.8ms 42.8MB 47ms 17ms dart/exe 3.7.3
nim 2.nim 76ms 2.3ms 5.5MB 67ms 0ms nim 2.2.4
haxe 1.hx 87ms 2.0ms 25.6MB 77ms 7ms haxe/cpp 4.3.6
nim 2.nim 92ms 3.6ms 5.8MB 83ms 0ms nim/clang 2.2.4
python 1.py 94ms 1.4ms 68.9MB 67ms 20ms pypy 3.10.16
javascript 1.js 101ms 3.1ms 79.5MB 77ms 30ms bun 1.2.11
crystal 1.cr 107ms 1.5ms 11.0MB 93ms 0ms crystal 1.16.2
go 1.go 113ms 1.8ms 5.6MB 100ms 0ms tinygo 0.37.0
kotlin 1.kt 121ms 3.2ms 163.1MB 143ms 33ms kotlin/jvm 21
rust 4.rs 121ms 0.2ms 5.8MB 110ms 0ms rustc 1.86.0
csharp 1.cs 123ms 5.1ms 31.9MB 87ms 33ms dotnet/aot 9.0.203
java 2-m.java 124ms 1.9ms 98.4MB 163ms 30ms openjdk 23
javascript 1.js 125ms 2.3ms 78.7MB 127ms 27ms node 23.11.0
java 2-m.java 127ms 2.5ms 167.1MB 160ms 30ms openjdk 21
rust 5.rs 128ms 0.5ms 5.8MB 120ms 0ms rustc 1.86.0
typescript 1.ts 129ms 2.3ms 78.9MB 127ms 27ms deno 2.3.1
rust 3.rs 137ms 9.7ms 7.8MB 123ms 0ms rustc 1.86.0
csharp 1.cs 140ms 0.7ms 44.1MB 117ms 13ms mono 6.12.0
java 2-m.java 144ms 4.4ms 215.0MB 210ms 60ms graal/jvm 17.0.8
zig 1.zig 156ms 0.8ms 7.0MB 147ms 0ms zig 0.14.0
d 1.d 164ms 0.4ms 207.9MB 130ms 20ms ldc2 1.40.1
wasm 5.rs 170ms 2.0ms 19.7MB 160ms 0ms wasmtime 32.0.0
wasm 4.rs 177ms 2.1ms 19.7MB 163ms 0ms wasmtime 32.0.0
wasm 3.rs 180ms 5.3ms 21.7MB 163ms 0ms wasmtime 32.0.0
chapel 4.chpl 184ms 0.5ms 32.3MB 180ms 0ms chpl 1.31.0
chapel 3.chpl 189ms 2.4ms 32.3MB 183ms 0ms chpl 1.31.0
kotlin 1.kt 204ms 3.4ms 17.6MB 210ms 3ms kotlin/native 2.1.20
csharp 1.cs 206ms 6.4ms 50.4MB 157ms 37ms dotnet 9.0.203
go 1-m.go 208ms 0.9ms 8.1MB 367ms 7ms go 1.24.2
v 1.v 210ms 2.0ms 197.8MB 120ms 77ms v/clang 0.4.10
odin 1.odin 219ms 3.5ms 7.5MB 207ms 0ms odin 2024
swift 1.swift 236ms 1.2ms 11.8MB 220ms 0ms swift 6.1.0
ocaml 1.ml 247ms 3.4ms 19.1MB 233ms 0ms ocaml 5.3.0
d 1.d 263ms 2.3ms 210.0MB 230ms 20ms dmd 2.111.0
lua 1.lua 290ms 4.0ms 15.8MB 270ms 10ms luajit 2.1.0-beta3
java 2.java 305ms 0.9ms 241.8MB 150ms 207ms openjdk/zgc 21
haxe 2.hx 384ms 6.8ms 58.3MB 420ms 27ms haxe/cpp 4.3.6
python 1.py 477ms 5.2ms 11.9MB 453ms 10ms pyston 3.8.12
ruby 1.rb 481ms 3.0ms 20.3MB 460ms 10ms ruby/yjit 3.4.3
ruby 1-m.rb 537ms 62ms 414.1MB 1070ms 150ms truffleruby 24.2.1
php 1.php 617ms 9.1ms 62.4MB 587ms 17ms php 8.2.28
haxe 1.hx 641ms 2.0ms 8.8MB 607ms 47ms haxe/hl/c 4.3.6
haxe 1.hx 678ms 3.2ms 11.2MB 757ms 47ms haxe/hl/jit 1.15.0
python 1.py 735ms 1.9ms 12.9MB 720ms 0ms cpython 3.13.3
lua 1.lua 809ms 8.7ms 16.9MB 790ms 0ms lua 5.4.7
acton 1.act 824ms 27ms 12.0MB 960ms 70ms actonc 0.25.0
haxe 2.hx 920ms 11ms 13.6MB 810ms 157ms haxe/hl/c 4.3.6
haxe 2.hx 928ms 4.6ms 25.2MB 907ms 153ms haxe/hl/jit 1.15.0
ruby 1.rb 931ms 3.2ms 19.5MB 910ms 7ms ruby 3.4.3
perl 1.pl 1824ms 8.8ms 14.4MB 1810ms 0ms perl 5.40.2