All binarytrees problem benchmarks

Current benchmark data was generated on Sun Jul 13 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 455ms 1.0ms 575.9MB 557ms 83ms openjdk 21
java 2-m.java 469ms 4.8ms 641.2MB 673ms 113ms graal/jvm 17.0.8
java 2.java 473ms 8.9ms 642.1MB 573ms 103ms openjdk 23
kotlin 1.kt 502ms 0.9ms 575.9MB 597ms 100ms kotlin/jvm 21
dart 1.dart 716ms 2.4ms 80.9MB 690ms 30ms dart/exe 3.8.1
nim 2.nim 786ms 11ms 34.9MB 770ms 3ms nim 2.2.4
v 1.v 825ms 11ms 28.8MB 810ms 3ms v/clang+gc 0.4.11
csharp 1.cs 931ms 8.3ms 181.9MB 933ms 137ms dotnet 9.0.302
csharp 1.cs 942ms 11ms 168.9MB 943ms 137ms dotnet/aot 9.0.302
nim 2.nim 947ms 6.3ms 35.2MB 923ms 10ms nim/clang 2.2.4
typescript 1.ts 1033ms 8.1ms 393.7MB 990ms 190ms deno 2.4.1
javascript 1.js 1052ms 7.6ms 474.5MB 977ms 230ms node 24.4.0
javascript 1-m.js 1079ms 165ms 176.6MB 1527ms 260ms bun 1.2.18
python 1.py 1162ms 7.5ms 96.8MB 1097ms 47ms pypy 3.11.13
java 2.java 1191ms 22ms 1054.4MB 577ms 773ms openjdk/zgc 21
crystal 1.cr 1241ms 14ms 64.2MB 1213ms 13ms crystal 1.16.3
rust 4.rs 1277ms 6.1ms 33.6MB 1253ms 10ms rustc 1.88.0
haxe 1.hx 1311ms 12ms 144.0MB 1490ms 67ms haxe/cpp 4.3.6
rust 5.rs 1404ms 46ms 33.8MB 1380ms 7ms rustc 1.88.0
rust 3.rs 1431ms 12ms 49.8MB 1400ms 13ms rustc 1.88.0
csharp 1.cs 1685ms 22ms 103.4MB 1870ms 203ms mono 6.12.0
wasm 5.rs 1739ms 5.1ms 34.0MB 1720ms 7ms wasmtime 34.0.1
go 1.go 1743ms 3.1ms 51.9MB 1723ms 10ms tinygo 0.38.0
wasm 4.rs 1815ms 23ms 34.1MB 1793ms 10ms wasmtime 34.0.1
wasm 3.rs 1852ms 9.2ms 50.0MB 1823ms 17ms wasmtime 34.0.1
zig 1.zig 1872ms 186ms 49.0MB 1840ms 17ms zig 0.14.1
chapel 4.chpl 1953ms 3.7ms 62.3MB 1943ms 0ms chpl 1.31.0
chapel 3.chpl 2034ms 7.2ms 62.3MB 2027ms 0ms chpl 1.31.0
v 1.v 2174ms 25ms 2086.6MB 1273ms 890ms v/clang 0.4.11
d 1.d 2199ms 4.7ms 312.4MB 2163ms 43ms ldc2 1.41.0
odin 1.odin 2342ms 21ms 49.5MB 2307ms 17ms odin 2024
go 1-m.go 2344ms 26ms 41.8MB 5190ms 40ms go 1.24.5
swift 1.swift 2692ms 22ms 53.8MB 2657ms 20ms swift 6.1.2
d 1.d 3022ms 5.5ms 314.5MB 3190ms 57ms dmd 2.111.0
ocaml 1.ml 3087ms 52ms 157.2MB 3003ms 70ms ocaml 5.3.0
lua 1.lua 3544ms 45ms 172.9MB 3407ms 123ms luajit 2.1.0-beta3
kotlin 1.kt 4076ms 141ms 134.1MB 4270ms 63ms kotlin/native 2.1.20
haxe 2.hx 4393ms 32ms 495.3MB 4950ms 253ms haxe/cpp 4.3.6
ruby 1.rb 4770ms 133ms 110.1MB 4677ms 77ms ruby/yjit 3.4.4
acton 1.act timeout 0.0ms 67.0MB 5860ms 97ms actonc 0.26.0
haxe 1.hx timeout 0.0ms 48.6MB 5573ms 410ms haxe/hl/c 4.3.6
haxe 2.hx timeout 0.0ms 83.0MB 5077ms 677ms haxe/hl/c 4.3.6
haxe 1.hx timeout 0.0ms 51.1MB 7727ms 420ms haxe/hl/jit 1.16.0
haxe 2.hx timeout 0.0ms 130.9MB 7430ms 763ms haxe/hl/jit 1.16.0
lua 1.lua timeout 0.0ms 104.9MB 4947ms 40ms lua 5.4.7
perl 1.pl timeout 0.0ms 77.8MB 4963ms 23ms perl 5.40.2
php 1.php timeout 0.0ms 141.6MB 4960ms 27ms php 8.2.29
python 1.py timeout 0.0ms 41.0MB 4973ms 10ms cpython 3.13.5
python 1.py timeout 0.0ms 40.5MB 4743ms 240ms pyston 3.8.12
ruby 1.rb timeout 0.0ms 70.5MB 4950ms 33ms ruby 3.4.4
ruby 1.rb timeout 0.0ms 796.7MB 6620ms 720ms truffleruby 24.2.1

Input: 15

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
v 1.v 72ms 2.2ms 4.6MB 60ms 0ms v/clang+gc 0.4.11
nim 2.nim 73ms 0.2ms 5.5MB 60ms 0ms nim 2.2.4
dart 1.dart 77ms 1.4ms 42.8MB 50ms 17ms dart/exe 3.8.1
haxe 1.hx 89ms 1.8ms 25.6MB 83ms 7ms haxe/cpp 4.3.6
nim 2.nim 93ms 1.5ms 5.8MB 80ms 0ms nim/clang 2.2.4
python 1.py 94ms 1.5ms 68.2MB 67ms 13ms pypy 3.11.13
javascript 1.js 98ms 1.3ms 77.8MB 77ms 27ms bun 1.2.18
crystal 1.cr 105ms 3.7ms 11.0MB 93ms 0ms crystal 1.16.3
csharp 1.cs 118ms 10ms 31.4MB 80ms 27ms dotnet/aot 9.0.302
rust 4.rs 122ms 2.6ms 5.6MB 110ms 0ms rustc 1.88.0
kotlin 1.kt 122ms 1.3ms 159.4MB 143ms 30ms kotlin/jvm 21
java 2-m.java 125ms 0.6ms 167.1MB 157ms 33ms openjdk 21
javascript 1.js 128ms 1.6ms 81.3MB 130ms 20ms node 24.4.0
rust 5.rs 128ms 3.1ms 5.8MB 120ms 0ms rustc 1.88.0
typescript 1.ts 129ms 0.9ms 81.2MB 130ms 27ms deno 2.4.1
java 2.java 129ms 5.0ms 96.0MB 167ms 27ms openjdk 23
rust 3.rs 137ms 3.2ms 7.8MB 127ms 0ms rustc 1.88.0
csharp 1.cs 141ms 3.1ms 44.2MB 120ms 13ms mono 6.12.0
go 1.go 148ms 3.7ms 5.0MB 140ms 0ms tinygo 0.38.0
java 2-m.java 151ms 3.3ms 227.2MB 220ms 63ms graal/jvm 17.0.8
zig 1.zig 152ms 2.9ms 7.0MB 140ms 0ms zig 0.14.1
wasm 5.rs 171ms 1.3ms 20.0MB 157ms 0ms wasmtime 34.0.1
wasm 4.rs 174ms 3.1ms 20.0MB 163ms 0ms wasmtime 34.0.1
wasm 3.rs 180ms 3.2ms 22.0MB 163ms 0ms wasmtime 34.0.1
chapel 4.chpl 183ms 1.2ms 32.4MB 180ms 0ms chpl 1.31.0
chapel 3.chpl 184ms 0.6ms 32.3MB 180ms 0ms chpl 1.31.0
csharp 1.cs 191ms 3.1ms 51.1MB 157ms 30ms dotnet 9.0.302
d 1.d 205ms 3.7ms 207.6MB 177ms 17ms ldc2 1.41.0
v 1.v 206ms 2.7ms 197.9MB 117ms 73ms v/clang 0.4.11
go 1-m.go 208ms 2.6ms 8.0MB 370ms 7ms go 1.24.5
ocaml 1.ml 221ms 1.6ms 19.1MB 207ms 0ms ocaml 5.3.0
odin 1.odin 222ms 3.2ms 7.5MB 210ms 0ms odin 2024
kotlin 1.kt 232ms 38ms 17.6MB 243ms 3ms kotlin/native 2.1.20
swift 1.swift 240ms 0.7ms 11.9MB 230ms 0ms swift 6.1.2
d 1.d 262ms 2.2ms 211.2MB 230ms 17ms dmd 2.111.0
lua 1.lua 290ms 5.5ms 15.7MB 267ms 10ms luajit 2.1.0-beta3
java 2.java 305ms 2.0ms 241.5MB 157ms 197ms openjdk/zgc 21
haxe 2.hx 401ms 15ms 58.3MB 437ms 27ms haxe/cpp 4.3.6
python 1.py 478ms 3.6ms 11.9MB 457ms 10ms pyston 3.8.12
ruby 1.rb 498ms 0.9ms 20.3MB 473ms 10ms ruby/yjit 3.4.4
ruby 1-m.rb 503ms 8.2ms 407.1MB 980ms 150ms truffleruby 24.2.1
php 1.php 625ms 2.2ms 62.6MB 590ms 20ms php 8.2.29
haxe 1.hx 639ms 3.4ms 8.9MB 610ms 40ms haxe/hl/c 4.3.6
haxe 1.hx 676ms 10ms 11.2MB 747ms 53ms haxe/hl/jit 1.16.0
python 1.py 727ms 3.3ms 12.9MB 717ms 0ms cpython 3.13.5
lua 1.lua 814ms 5.2ms 16.9MB 797ms 0ms lua 5.4.7
acton 1.act 825ms 34ms 12.1MB 950ms 67ms actonc 0.26.0
haxe 2.hx 916ms 2.0ms 13.6MB 807ms 147ms haxe/hl/c 4.3.6
ruby 1.rb 947ms 3.2ms 19.5MB 923ms 13ms ruby 3.4.4
haxe 2.hx 954ms 12ms 25.0MB 927ms 173ms haxe/hl/jit 1.16.0
perl 1.pl 1814ms 11ms 14.4MB 1800ms 0ms perl 5.40.2