All binarytrees problem benchmarks

Current benchmark data was generated on Thu May 04 2023, full log can be found HERE


[x86_64][2 cores] Intel(R) Xeon(R) Platinum 8272CL CPU @ 2.60GHz (Model 85)

* -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.)


Input: 18

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
kotlin 1.kt 723ms 24ms 413.5MB 730ms 107ms kotlin/jvm 17.0.2
java 760ms 15ms 411.4MB 753ms 127ms openjdk 21
java 796ms 69ms 410.1MB 707ms 147ms openjdk 20
java 943ms 154ms 896.1MB 940ms 253ms graal/jvm 17.0.7
v 1.v 1216ms 7.1ms 37.1MB 1187ms 13ms v/clang+gc 0.3.4
julia 4.jl 1253ms 8.6ms 241.2MB 1127ms 207ms julia 1.8.5
dart 1.dart 1260ms 24ms 79.6MB 1227ms 40ms dart/exe
dart 1.dart 1292ms 5.7ms 85.7MB 1250ms 40ms dart/exe 2.19.6
java 1387ms 14ms 1006.5MB 1000ms 623ms openjdk/zgc 20
v 1.v 1453ms 241ms 37.0MB 1427ms 10ms v/clang 0.3.4
csharp 1.cs 1474ms 36ms 309.1MB 1380ms 177ms dotnet/aot 7.0.203
javascript 1.js 1519ms 9.2ms 229.7MB 1900ms 70ms bun 0.5.9
csharp 1.cs 1652ms 19ms 357.4MB 1500ms 220ms dotnet 7.0.203
python 1790ms 46ms 217.6MB 1663ms 110ms pypy 3.9.16
rust 1896ms 31ms 33.6MB 1867ms 17ms rustc 1.69.0
rust 2004ms 36ms 33.9MB 1973ms 10ms rustc 1.69.0
rust 2057ms 41ms 49.9MB 2027ms 13ms rustc 1.69.0
haxe 1.hx 2096ms 20ms 146.2MB 2420ms 73ms haxe/cpp 4.2.5
nim 2.nim 2139ms 5.2ms 34.7MB 2123ms 0ms nim 1.6.12
nim 2.nim 2145ms 6.8ms 35.1MB 2117ms 13ms nim/clang 1.6.12
wasm 2247ms 10ms 47.7MB 2220ms 13ms wasmedgec 0.12.0
wasm 2270ms 20ms 31.4MB 2250ms 7ms wasmedgec 0.12.0
crystal 2274ms 3.6ms 64.3MB 2240ms 20ms crystal 1.8.1
csharp 1.cs 2381ms 20ms 104.3MB 2803ms 233ms mono 6.12.0
wasm 2399ms 17ms 31.1MB 2377ms 7ms wasmedgec 0.12.0
zig 1.zig 2441ms 11ms 49.1MB 2400ms 23ms zig 0.11.0-dev.2969+855493bb8
chapel 4.chpl 2458ms 8.2ms 66.1MB 2433ms 13ms chpl 1.30.0
d 1.d 2543ms 10.0ms 312.3MB 2467ms 83ms ldc2 1.32.1
chapel 3.chpl 2673ms 15ms 64.2MB 2633ms 23ms chpl 1.30.0
wasm 2729ms 16ms 64.3MB 2703ms 13ms node 18.16.0
wasm 2794ms 29ms 31.5MB 2767ms 7ms wasmtime 8.0.1
wasm 2829ms 27ms 47.5MB 2807ms 10ms wasmtime 8.0.1
wasm 2851ms 30ms 64.2MB 2820ms 20ms node 18.16.0
wasm 2897ms 22ms 80.3MB 2873ms 23ms node 18.16.0
wasm 2989ms 34ms 31.5MB 2963ms 10ms wasmtime 8.0.1
swift 1.swift 3088ms 73ms 52.6MB 3047ms 17ms swift 5.8.0
d 1.d 3482ms 11ms 314.1MB 3540ms 90ms dmd 2.103.1
javascript 1.js 3652ms 865ms 319.8MB 2967ms 1180ms node 20.0.0
go 1.go 3836ms 4.3ms 43.9MB 5480ms 57ms go 1.20.4
odin 1.odin 4703ms 53ms 49.5MB 4670ms 17ms odin 2023
go 1.go 4878ms 33ms 51.4MB 4847ms 13ms tinygo 0.27.0
typescript 1.ts 4948ms 13ms 236.5MB 4877ms 1500ms deno 1.33.1
haxe 2.hx timeout 0.0ms 398.3MB 5893ms 190ms haxe/cpp 4.2.5
haxe 1.hx timeout 0.0ms 48.7MB 4733ms 247ms haxe/hl/c 4.2.5
haxe 2.hx timeout 0.0ms 83.0MB 4490ms 493ms haxe/hl/c 4.2.5
haxe 1.hx timeout 0.0ms 49.0MB 4743ms 237ms haxe/hl/jit 1.13.0
haxe 2.hx timeout 0.0ms 130.2MB 4500ms 483ms haxe/hl/jit 1.13.0
kotlin 1.kt timeout 0.0ms 214.5MB 8470ms 1007ms kotlin/native 1.8.21
lua 1.lua timeout 0.0ms 119.6MB 4937ms 47ms lua 5.4.4
lua 1.lua timeout 0.0ms 177.7MB 4913ms 70ms luajit 2.1.0-beta3
ocaml timeout 0.0ms 145.4MB 4903ms 73ms ocaml 5.0.0
perl timeout 0.0ms 77.7MB 4957ms 27ms perl 5.36.1
php 1.php timeout 0.0ms 141.1MB 4937ms 47ms php 8.2.4
python timeout 0.0ms 40.9MB 4960ms 17ms cpython 3.11.3
python timeout 0.0ms 40.3MB 4917ms 63ms pyston 3.8.12
ruby 1.rb timeout 0.0ms 72.7MB 4957ms 27ms ruby 3.2.2
ruby 1.rb timeout 0.0ms 82.1MB 4917ms 63ms ruby/yjit 3.2.2
ruby 1.rb timeout 0.0ms 493.5MB 8423ms 347ms truffleruby 22.3.1

Input: 15

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
v 1.v 88ms 0.4ms 5.5MB 80ms 0ms v/clang+gc 0.3.4
v 1.v 91ms 1.0ms 5.6MB 80ms 0ms v/clang 0.3.4
dart 1.dart 113ms 4.2ms 41.8MB 83ms 17ms dart/exe
dart 1.dart 118ms 2.2ms 49.6MB 93ms 13ms dart/exe 2.19.6
haxe 1.hx 128ms 7.4ms 25.8MB 120ms 10ms haxe/cpp 4.2.5
javascript 1.js 144ms 1.8ms 102.1MB 123ms 23ms bun 0.5.9
csharp 1.cs 145ms 3.3ms 61.4MB 117ms 23ms dotnet/aot 7.0.203
kotlin 1.kt 147ms 15ms 109.4MB 107ms 40ms kotlin/jvm 17.0.2
crystal 150ms 3.1ms 11.2MB 137ms 3ms crystal 1.8.1
python 160ms 14ms 74.6MB 110ms 23ms pypy 3.9.16
csharp 1.cs 163ms 0.5ms 46.1MB 147ms 7ms mono 6.12.0
rust 170ms 0.7ms 7.8MB 157ms 0ms rustc 1.69.0
rust 173ms 6.5ms 5.7MB 160ms 0ms rustc 1.69.0
rust 176ms 4.0ms 5.7MB 163ms 0ms rustc 1.69.0
java 184ms 8.1ms 110.1MB 177ms 30ms openjdk 20
typescript 1.ts 185ms 2.1ms 66.3MB 190ms 13ms deno 1.33.1
java 190ms 15ms 109.9MB 170ms 40ms openjdk 21
zig 1.zig 196ms 0.7ms 7.1MB 183ms 0ms zig 0.11.0-dev.2969+855493bb8
nim 2.nim 202ms 0.6ms 5.5MB 190ms 0ms nim 1.6.12
nim 2.nim 207ms 3.8ms 5.7MB 190ms 0ms nim/clang 1.6.12
java 208ms 22ms 163.1MB 237ms 67ms graal/jvm 17.0.7
javascript 1.js 208ms 4.2ms 72.4MB 190ms 23ms node 20.0.0
wasm 211ms 4.7ms 19.6MB 193ms 0ms wasmedgec 0.12.0
wasm 213ms 2.7ms 17.4MB 197ms 0ms wasmedgec 0.12.0
wasm 228ms 2.4ms 17.5MB 210ms 0ms wasmedgec 0.12.0
chapel 3.chpl 242ms 2.6ms 34.0MB 223ms 7ms chpl 1.30.0
chapel 4.chpl 243ms 11ms 36.0MB 213ms 7ms chpl 1.30.0
csharp 1.cs 253ms 4.2ms 83.2MB 197ms 33ms dotnet 7.0.203
d 1.d 264ms 2.3ms 208.9MB 210ms 40ms ldc2 1.32.1
wasm 273ms 5.7ms 17.3MB 260ms 0ms wasmtime 8.0.1
swift 1.swift 275ms 12ms 10.4MB 260ms 0ms swift 5.8.0
wasm 280ms 21ms 19.4MB 247ms 3ms wasmtime 8.0.1
wasm 288ms 8.4ms 17.3MB 267ms 0ms wasmtime 8.0.1
wasm 302ms 0.8ms 51.2MB 287ms 10ms node 18.16.0
wasm 312ms 5.2ms 51.6MB 293ms 17ms node 18.16.0
wasm 314ms 2.5ms 51.9MB 300ms 10ms node 18.16.0
go 1.go 322ms 1.5ms 8.0MB 410ms 10ms go 1.20.4
d 1.d 332ms 1.7ms 210.5MB 263ms 47ms dmd 2.103.1
java 342ms 5.5ms 238.9MB 177ms 187ms openjdk/zgc 20
julia 4.jl 348ms 1.7ms 223.5MB 280ms 147ms julia 1.8.5
ocaml 359ms 8.8ms 22.9MB 337ms 7ms ocaml 5.0.0
odin 1.odin 399ms 1.4ms 7.5MB 383ms 0ms odin 2023
go 1.go 462ms 3.0ms 6.6MB 450ms 0ms tinygo 0.27.0
lua 1.lua 516ms 1.1ms 24.9MB 490ms 10ms luajit 2.1.0-beta3
kotlin 1-m.kt 534ms 16ms 34.4MB 933ms 80ms kotlin/native 1.8.21
haxe 2.hx 597ms 8.3ms 58.4MB 653ms 40ms haxe/cpp 4.2.5
ruby 1.rb 625ms 33ms 40.7MB 590ms 20ms ruby/yjit 3.2.2
python 671ms 2.6ms 12.0MB 633ms 17ms pyston 3.8.12
haxe 1.hx 844ms 3.6ms 8.6MB 797ms 33ms haxe/hl/c 4.2.5
php 1.php 851ms 1.5ms 62.6MB 823ms 7ms php 8.2.4
python 966ms 14ms 12.5MB 947ms 3ms cpython 3.11.3
haxe 1.hx 1008ms 5.7ms 11.1MB 950ms 40ms haxe/hl/jit 1.13.0
ruby 1.rb 1054ms 21ms 40.2MB 1020ms 17ms ruby 3.2.2
lua 1.lua 1211ms 16ms 17.3MB 1193ms 0ms lua 5.4.4
ruby 1-m.rb 1308ms 42ms 429.5MB 2093ms 207ms truffleruby 22.3.1
haxe 2.hx 1339ms 21ms 13.5MB 1210ms 113ms haxe/hl/c 4.2.5
haxe 2.hx 1818ms 21ms 25.0MB 1650ms 150ms haxe/hl/jit 1.13.0
perl 2168ms 14ms 14.0MB 2150ms 0ms perl 5.36.1