All binarytrees problem benchmarks

Current benchmark data was generated on Fri Dec 09 2022, full log can be found HERE

CONTRIBUTIONS are WELCOME!

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

binarytrees

Input: 18

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
kotlin 1.kt 666ms 9.4ms 413.0MB 663ms 107ms kotlin/jvm 17.0.2
java 2.java 716ms 45ms 606.1MB 660ms 143ms openjdk 20
java 2.java 755ms 58ms 601.4MB 667ms 173ms openjdk 19
java 2.java 758ms 24ms 665.8MB 790ms 197ms graal/jvm 17.0.5
dart 1.dart 1085ms 11ms 85.4MB 1053ms 33ms dart/exe 2.18.5
v 1.v 1087ms 25ms 37.2MB 1057ms 13ms v/clang+gc 0.3.2
v 1.v 1089ms 21ms 37.0MB 1050ms 10ms v/clang 0.3.2
julia 4.jl 1190ms 11ms 243.4MB 1087ms 187ms julia 1.8.3
java 2.java 1322ms 50ms 1009.4MB 903ms 640ms openjdk/zgc 19
javascript 1.js 1355ms 3.8ms 236.5MB 1680ms 67ms bun 0.3.0
csharp 1.cs 1458ms 48ms 306.6MB 1327ms 200ms dotnet/aot 7.0.100
csharp 1.cs 1586ms 14ms 429.0MB 1400ms 243ms dotnet 7.0.100
python 1.py 1587ms 15ms 217.5MB 1427ms 143ms pypy 3.9.15
rust 4.rs 1678ms 9.0ms 33.7MB 1660ms 3ms rustc 1.65.0
rust 5.rs 1830ms 14ms 33.8MB 1807ms 7ms rustc 1.65.0
haxe 1.hx 1838ms 12ms 146.1MB 2247ms 73ms haxe/cpp 4.2.5
rust 3.rs 1926ms 12ms 49.8MB 1897ms 10ms rustc 1.65.0
crystal 1.cr 2021ms 11ms 64.0MB 1990ms 17ms crystal 1.6.2
nim 2.nim 2118ms 4.0ms 34.6MB 2093ms 7ms nim/clang 1.6.10
nim 2.nim 2126ms 0.4ms 34.8MB 2107ms 3ms nim 1.6.10
wasm 3.rs 2176ms 15ms 47.0MB 2147ms 17ms wasmedgec 0.11.2
wasm 5.rs 2227ms 11ms 31.0MB 2207ms 7ms wasmedgec 0.11.2
zig 1.zig 2227ms 30ms 49.1MB 2190ms 20ms zig 0.11.0-dev.632+d69e97ae1
csharp 1.cs 2302ms 13ms 104.9MB 2797ms 160ms mono 6.12.0
wasm 4.rs 2358ms 0.9ms 32.4MB 2343ms 3ms wasmedgec 0.11.2
chapel 4.chpl 2521ms 3.7ms 54.3MB 2480ms 23ms chpl 1.28.0
chapel 3.chpl 2601ms 6.6ms 50.3MB 2567ms 13ms chpl 1.28.0
wasm 5.rs 2729ms 56ms 58.5MB 2720ms 20ms node 16.18.1
wasm 3.rs 2792ms 62ms 74.7MB 2780ms 23ms node 16.18.1
wasm 4.rs 2811ms 80ms 58.3MB 2813ms 10ms node 16.18.1
go 1.go 3073ms 26ms 46.1MB 4390ms 63ms go 1.19.4
wasm 3.rs 3192ms 3.1ms 42.3MB 3170ms 7ms wasmtime 3.0.1
d 1.d 3243ms 13ms 75.1MB 3443ms 27ms ldc2 1.30.0
wasm 4.rs 3244ms 19ms 26.3MB 3227ms 3ms wasmtime 3.0.1
wasm 5.rs 3322ms 1.9ms 26.5MB 3310ms 0ms wasmtime 3.0.1
typescript 1.ts 4128ms 174ms 145.0MB 4027ms 617ms deno 1.28.3
javascript 1.js 4135ms 58ms 270.3MB 2983ms 1417ms node 19.2.0
ocaml 1.ml 4278ms 12ms 120.4MB 4230ms 33ms ocaml 4.14.0
go 1.go 4563ms 15ms 38.9MB 4540ms 7ms tinygo 0.25.0
d 1.d 4769ms 43ms 185.6MB 5250ms 77ms dmd 2.101.0
haxe 2.hx timeout 0.0ms 0.0MB 0ms 0ms haxe/cpp 4.2.5
haxe 1.hx timeout 0.0ms 0.0MB 0ms 0ms haxe/hl/c 4.2.5
haxe 2.hx timeout 0.0ms 0.0MB 0ms 0ms haxe/hl/c 4.2.5
haxe 1.hx timeout 0.0ms 0.0MB 0ms 0ms haxe/hl/jit 1.13.0
haxe 2.hx timeout 0.0ms 0.0MB 0ms 0ms haxe/hl/jit 1.13.0
kotlin 1.kt timeout 0.0ms 0.0MB 0ms 0ms kotlin/native 1.7.22
lua 1.lua timeout 0.0ms 0.0MB 0ms 0ms lua 5.4.4
lua 1.lua timeout 0.0ms 0.0MB 0ms 0ms luajit 2.1.0-beta3
perl 1.pl timeout 0.0ms 0.0MB 0ms 0ms perl 5.36.0
php 1.php timeout 0.0ms 0.0MB 0ms 0ms php 8.1.13
python 1.py timeout 0.0ms 0.0MB 0ms 0ms cpython 3.11.1
python 1.py timeout 0.0ms 0.0MB 0ms 0ms pyston 3.8.12
ruby 1.rb timeout 0.0ms 0.0MB 0ms 0ms ruby 3.1.3
ruby 1.rb timeout 0.0ms 0.0MB 0ms 0ms ruby/yjit 3.1.3
ruby 1.rb timeout 0.0ms 0.0MB 0ms 0ms truffleruby 22.3.0

Input: 15

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
v 1.v 88ms 2.1ms 5.6MB 80ms 0ms v/clang+gc 0.3.2
v 1.v 97ms 0.7ms 5.5MB 77ms 0ms v/clang 0.3.2
dart 1.dart 107ms 3.3ms 50.8MB 77ms 17ms dart/exe 2.18.5
python 1.py 117ms 0.9ms 74.5MB 87ms 13ms pypy 3.9.15
haxe 1.hx 119ms 2.7ms 27.6MB 107ms 13ms haxe/cpp 4.2.5
javascript 1.js 131ms 2.5ms 102.3MB 113ms 17ms bun 0.3.0
kotlin 1.kt 140ms 6.9ms 154.2MB 107ms 40ms kotlin/jvm 17.0.2
csharp 1.cs 142ms 2.1ms 58.4MB 123ms 17ms dotnet/aot 7.0.100
crystal 1.cr 146ms 1.9ms 11.0MB 133ms 0ms crystal 1.6.2
rust 4.rs 152ms 0.9ms 5.7MB 140ms 0ms rustc 1.65.0
csharp 1.cs 158ms 1.0ms 46.2MB 140ms 7ms mono 6.12.0
rust 5.rs 164ms 1.6ms 5.8MB 150ms 0ms rustc 1.65.0
rust 3.rs 170ms 3.1ms 7.7MB 153ms 0ms rustc 1.65.0
java 2.java 176ms 4.8ms 111.0MB 160ms 43ms openjdk 19
java 2.java 178ms 10ms 108.0MB 160ms 40ms openjdk 20
zig 1.zig 190ms 1.1ms 7.1MB 173ms 0ms zig 0.11.0-dev.632+d69e97ae1
typescript 1.ts 193ms 5.4ms 59.2MB 210ms 17ms deno 1.28.3
nim 2.nim 201ms 0.2ms 5.7MB 190ms 0ms nim/clang 1.6.10
nim 2.nim 202ms 1.4ms 5.5MB 190ms 0ms nim 1.6.10
java 2.java 204ms 10ms 161.8MB 227ms 57ms graal/jvm 17.0.5
wasm 3.rs 205ms 1.1ms 20.3MB 190ms 0ms wasmedgec 0.11.2
javascript 1.js 209ms 4.3ms 71.7MB 190ms 27ms node 19.2.0
wasm 5.rs 212ms 1.8ms 17.1MB 197ms 0ms wasmedgec 0.11.2
wasm 4.rs 224ms 0.6ms 18.1MB 217ms 0ms wasmedgec 0.11.2
chapel 4.chpl 238ms 4.3ms 20.1MB 220ms 7ms chpl 1.28.0
chapel 3.chpl 239ms 3.0ms 20.1MB 220ms 0ms chpl 1.28.0
go 1.go 269ms 4.2ms 8.2MB 343ms 7ms go 1.19.4
csharp 1.cs 274ms 6.9ms 155.8MB 190ms 60ms dotnet 7.0.100
ocaml 1.ml 280ms 1.7ms 17.4MB 267ms 0ms ocaml 4.14.0
d 1.d 283ms 4.5ms 15.1MB 273ms 0ms ldc2 1.30.0
wasm 3.rs 299ms 2.4ms 14.5MB 283ms 0ms wasmtime 3.0.1
wasm 4.rs 307ms 2.7ms 12.4MB 290ms 0ms wasmtime 3.0.1
wasm 5.rs 322ms 8.1ms 44.2MB 323ms 10ms node 16.18.1
wasm 3.rs 324ms 0.5ms 46.7MB 327ms 7ms node 16.18.1
wasm 5.rs 326ms 10ms 12.6MB 303ms 0ms wasmtime 3.0.1
wasm 4.rs 326ms 1.7ms 44.4MB 333ms 0ms node 16.18.1
julia 4.jl 332ms 2.0ms 223.2MB 263ms 153ms julia 1.8.3
java 2.java 334ms 12ms 240.0MB 177ms 180ms openjdk/zgc 19
go 1.go 343ms 1.1ms 6.9MB 330ms 0ms tinygo 0.25.0
d 1.d 407ms 1.7ms 26.4MB 413ms 0ms dmd 2.101.0
kotlin 1-m.kt 460ms 8.9ms 30.4MB 757ms 0ms kotlin/native 1.7.22
lua 1.lua 462ms 35ms 24.8MB 437ms 10ms luajit 2.1.0-beta3
haxe 2.hx 485ms 8.6ms 60.3MB 543ms 30ms haxe/cpp 4.2.5
python 1.py 662ms 1.2ms 12.0MB 643ms 3ms pyston 3.8.12
haxe 1.hx 845ms 0.5ms 8.6MB 817ms 10ms haxe/hl/c 4.2.5
haxe 1.hx 982ms 4.8ms 11.0MB 940ms 20ms haxe/hl/jit 1.13.0
python 1.py 994ms 8.9ms 12.5MB 977ms 0ms cpython 3.11.1
ruby 1.rb 1034ms 1.9ms 292.1MB 873ms 147ms ruby/yjit 3.1.3
ruby 1.rb 1057ms 6.6ms 35.5MB 1020ms 20ms ruby 3.1.3
ruby 1-m.rb 1147ms 21ms 428.0MB 1900ms 160ms truffleruby 22.3.0
lua 1.lua 1184ms 4.8ms 17.3MB 1163ms 0ms lua 5.4.4
haxe 2.hx 1306ms 4.5ms 13.4MB 1183ms 103ms haxe/hl/c 4.2.5
haxe 2.hx 1491ms 2.5ms 25.0MB 1353ms 117ms haxe/hl/jit 1.13.0
perl 1.pl 2180ms 16ms 14.1MB 2170ms 0ms perl 5.36.0
php 1.php timeout 0.0ms 0.0MB 0ms 0ms php 8.1.13