All lru problem benchmarks

Current benchmark data was generated on Wed Jan 22 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.)

lru

Input: 1000 1000000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
zig 1.zig 35ms 1.1ms 2.9MB 30ms 0ms zig 0.13.0
rust 0-unsafe.rs 35ms 3.7ms 1.9MB 23ms 0ms rustc 1.84.0
crystal 0-unsafe.cr 37ms 1.0ms 2.9MB 23ms 0ms crystal 1.15.0
rust 1.rs 53ms 2.6ms 2.0MB 40ms 0ms rustc 1.84.0
crystal 1.cr 65ms 1.7ms 3.0MB 57ms 0ms crystal 1.15.0
wasm 1.rs 84ms 1.3ms 19.7MB 70ms 0ms wasmtime 29.0.1
csharp 2.cs 99ms 1.7ms 13.9MB 83ms 0ms dotnet/aot 9.0.102
nim 2.nim 110ms 1.6ms 1.6MB 100ms 0ms nim/clang 2.2.0
nim 2.nim 114ms 0.5ms 1.4MB 103ms 0ms nim 2.2.0
d 1.d 124ms 1.2ms 5.9MB 113ms 0ms ldc2 1.40.0
go 3.go 128ms 2.5ms 0.3MB 120ms 0ms tinygo 0.35.0
go 3.go 132ms 1.5ms 3.4MB 123ms 0ms go 1.23.5
haxe 1.hx 134ms 1.1ms 20.4MB 127ms 0ms haxe/cpp 4.3.6
haxe 1.hx 135ms 0.4ms 5.0MB 127ms 0ms haxe/hl/c 4.3.6
odin 1.odin 145ms 1.9ms 1.6MB 133ms 0ms odin 2024
csharp 2.cs 146ms 1.3ms 22.7MB 133ms 3ms mono 6.12.0
python 2.py 146ms 1.1ms 57.9MB 120ms 13ms pypy 3.10.14
haxe 1.hx 152ms 0.4ms 5.7MB 140ms 0ms haxe/hl/jit 1.14.0
dart 2.dart 159ms 0.7ms 9.3MB 147ms 0ms dart/exe 3.6.1
kotlin 1-m.kt 177ms 0.9ms 94.9MB 293ms 37ms kotlin/jvm 21
d 1.d 180ms 2.6ms 7.9MB 170ms 7ms dmd 2.109.1
ocaml 1.ml 181ms 7.0ms 6.5MB 167ms 0ms ocaml 5.3.0
python 1.py 181ms 1.4ms 59.5MB 153ms 10ms pypy 3.10.14
kotlin 2-m.kt 197ms 4.0ms 102.2MB 413ms 37ms kotlin/jvm 21
v 1.v 242ms 1.9ms 1.3MB 230ms 0ms v/clang 0.4.9
v 1.v 257ms 2.6ms 2.1MB 243ms 0ms v/clang+gc 0.4.9
csharp 2.cs 257ms 11ms 33.4MB 233ms 13ms dotnet 9.0.102
typescript 2.ts 286ms 13ms 65.3MB 273ms 13ms deno 2.1.7
kotlin 2.kt 305ms 3.4ms 7.8MB 437ms 7ms kotlin/native 1.8.21
javascript 2.js 307ms 1.4ms 66.8MB 297ms 13ms node 23.6.0
ruby 1.rb 332ms 2.7ms 13.6MB 317ms 0ms ruby/yjit 3.4.1
dart 1.dart 509ms 2.3ms 9.1MB 500ms 0ms dart/exe 3.6.1
kotlin 1.kt 521ms 19ms 7.8MB 623ms 3ms kotlin/native 1.8.21
ruby 1.rb 528ms 2.0ms 13.0MB 507ms 3ms ruby 3.4.1
javascript 1.js 559ms 2.7ms 64.5MB 543ms 13ms node 23.6.0
typescript 1.ts 568ms 8.1ms 62.3MB 550ms 13ms deno 2.1.7
javascript 2.js 640ms 0.8ms 127.1MB 687ms 63ms bun 1.1.45
ruby 1-m.rb 687ms 26ms 371.7MB 1250ms 123ms truffleruby 24.1.2
python 1.py 718ms 4.4ms 8.9MB 707ms 0ms pyston 3.8.12
javascript 1.js 826ms 4.8ms 110.7MB 910ms 77ms bun 1.1.45
python 2.py 832ms 3.1ms 8.5MB 817ms 0ms pyston 3.8.12
csharp 1.cs 1004ms 6.7ms 17.2MB 980ms 7ms dotnet/aot 9.0.102
python 1.py 1101ms 2.8ms 9.3MB 1083ms 0ms cpython 3.13.1
python 2.py 1309ms 4.2ms 9.1MB 1297ms 0ms cpython 3.13.1
csharp 1.cs 1439ms 251ms 38.9MB 1417ms 13ms dotnet 9.0.102
csharp 1.cs 3311ms 41ms 47.6MB 3270ms 30ms mono 6.12.0
nim 1.nim timeout 0.0ms 1.5MB 4990ms 0ms nim/clang 2.2.0
nim 1.nim timeout 0.0ms 1.3MB 4990ms 0ms nim 2.2.0

Input: 1000 3000000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
zig 1.zig 97ms 2.2ms 2.9MB 83ms 0ms zig 0.13.0
crystal 0-unsafe.cr 101ms 1.0ms 2.9MB 90ms 0ms crystal 1.15.0
rust 0-unsafe.rs 134ms 22ms 1.9MB 123ms 0ms rustc 1.84.0
rust 1.rs 178ms 9.4ms 2.0MB 167ms 0ms rustc 1.84.0
crystal 1.cr 184ms 2.6ms 2.9MB 170ms 0ms crystal 1.15.0
wasm 1.rs 233ms 2.5ms 19.6MB 223ms 0ms wasmtime 29.0.1
csharp 2.cs 273ms 2.4ms 13.7MB 257ms 0ms dotnet/aot 9.0.102
kotlin 2-m.kt 317ms 11ms 213.0MB 513ms 47ms kotlin/jvm 21
nim 2.nim 323ms 4.9ms 1.6MB 313ms 0ms nim/clang 2.2.0
kotlin 1.kt 325ms 3.6ms 202.9MB 443ms 30ms kotlin/jvm 21
nim 2.nim 337ms 4.4ms 1.4MB 323ms 0ms nim 2.2.0
python 2.py 338ms 1.6ms 58.9MB 313ms 7ms pypy 3.10.14
d 1.d 359ms 6.0ms 5.8MB 357ms 0ms ldc2 1.40.0
haxe 1.hx 375ms 1.6ms 25.5MB 363ms 7ms haxe/cpp 4.3.6
go 3.go 384ms 0.4ms 3.4MB 380ms 0ms go 1.23.5
python 1.py 385ms 6.4ms 60.4MB 353ms 13ms pypy 3.10.14
go 3.go 389ms 14ms 0.3MB 377ms 0ms tinygo 0.35.0
csharp 2.cs 402ms 2.3ms 35.6MB 387ms 10ms dotnet 9.0.102
haxe 1.hx 403ms 6.2ms 5.0MB 393ms 0ms haxe/hl/c 4.3.6
csharp 2.cs 412ms 97ms 24.8MB 397ms 0ms mono 6.12.0
odin 1.odin 429ms 5.3ms 1.8MB 420ms 0ms odin 2024
haxe 1.hx 451ms 3.3ms 5.7MB 437ms 0ms haxe/hl/jit 1.14.0
dart 2.dart 465ms 1.4ms 9.3MB 450ms 3ms dart/exe 3.6.1
d 1.d 521ms 2.1ms 7.8MB 517ms 7ms dmd 2.109.1
ocaml 1.ml 540ms 16ms 6.6MB 527ms 0ms ocaml 5.3.0
v 1.v 714ms 3.3ms 1.3MB 703ms 0ms v/clang 0.4.9
typescript 2.ts 724ms 3.6ms 72.6MB 710ms 23ms deno 2.1.7
v 1.v 770ms 30ms 2.1MB 753ms 3ms v/clang+gc 0.4.9
javascript 2.js 840ms 3.3ms 72.4MB 823ms 17ms node 23.6.0
ruby 1.rb 879ms 7.2ms 13.6MB 860ms 3ms ruby/yjit 3.4.1
kotlin 2.kt 907ms 26ms 7.8MB 1293ms 50ms kotlin/native 1.8.21
ruby 1-m.rb 1238ms 26ms 415.6MB 1737ms 157ms truffleruby 24.1.2
ruby 1.rb 1475ms 7.8ms 13.0MB 1457ms 3ms ruby 3.4.1
dart 1.dart 1525ms 16ms 9.1MB 1513ms 3ms dart/exe 3.6.1
kotlin 1.kt 1564ms 31ms 7.9MB 1900ms 33ms kotlin/native 1.8.21
javascript 1.js 1586ms 6.0ms 71.4MB 1567ms 17ms node 23.6.0
typescript 1.ts 1642ms 22ms 69.2MB 1620ms 17ms deno 2.1.7
javascript 2.js 1816ms 29ms 122.9MB 1960ms 60ms bun 1.1.45
python 1.py 2127ms 17ms 8.9MB 2110ms 0ms pyston 3.8.12
python 2.py 2489ms 22ms 8.5MB 2473ms 0ms pyston 3.8.12
javascript 1.js 2536ms 140ms 112.1MB 2847ms 137ms bun 1.1.45
csharp 1.cs 2970ms 21ms 17.1MB 2943ms 13ms dotnet/aot 9.0.102
python 1.py 3291ms 15ms 9.3MB 3283ms 0ms cpython 3.13.1
csharp 1.cs 3581ms 35ms 39.1MB 3560ms 20ms dotnet 9.0.102
python 2.py 3877ms 18ms 9.0MB 3860ms 0ms cpython 3.13.1
csharp 1.cs timeout 0.0ms 47.8MB 4953ms 37ms mono 6.12.0
nim 1.nim timeout 0.0ms 1.5MB 4987ms 0ms nim/clang 2.2.0
nim 1.nim timeout 0.0ms 1.3MB 4990ms 0ms nim 2.2.0

Input: 100 500000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
zig 1.zig 16ms 0.6ms 1.4MB 10ms 0ms zig 0.13.0
crystal 0-unsafe.cr 18ms 0.6ms 2.9MB 10ms 0ms crystal 1.15.0
rust 0-unsafe.rs 24ms 0.4ms 1.9MB 13ms 0ms rustc 1.84.0
rust 1.rs 30ms 1.8ms 1.9MB 20ms 0ms rustc 1.84.0
crystal 1.cr 30ms 1.5ms 2.9MB 20ms 0ms crystal 1.15.0
wasm 1.rs 45ms 1.3ms 20.9MB 33ms 0ms wasmtime 29.0.1
nim 2.nim 49ms 1.1ms 1.5MB 40ms 0ms nim/clang 2.2.0
nim 2.nim 50ms 0.3ms 1.3MB 40ms 0ms nim 2.2.0
csharp 2.cs 52ms 1.8ms 15.9MB 40ms 0ms dotnet/aot 9.0.102
d 1.d 55ms 1.6ms 5.8MB 50ms 0ms ldc2 1.40.0
go 3.go 63ms 0.5ms 0.1MB 50ms 0ms tinygo 0.35.0
haxe 1.hx 64ms 0.5ms 12.4MB 53ms 0ms haxe/cpp 4.3.6
odin 1.odin 66ms 0.6ms 1.6MB 57ms 0ms odin 2024
haxe 1.hx 67ms 1.0ms 5.0MB 60ms 0ms haxe/hl/c 4.3.6
go 3.go 68ms 0.9ms 5.4MB 60ms 0ms go 1.23.5
dart 2.dart 76ms 2.4ms 9.1MB 63ms 3ms dart/exe 3.6.1
ocaml 1.ml 77ms 0.8ms 6.0MB 63ms 0ms ocaml 5.3.0
haxe 1.hx 78ms 1.0ms 5.7MB 70ms 0ms haxe/hl/jit 1.14.0
d 1.d 88ms 15ms 5.9MB 67ms 33ms dmd 2.109.1
v 1.v 89ms 0.4ms 1.4MB 80ms 0ms v/clang 0.4.9
csharp 2.cs 94ms 1.2ms 24.5MB 80ms 3ms mono 6.12.0
v 1.v 99ms 0.7ms 2.1MB 90ms 0ms v/clang+gc 0.4.9
python 2.py 106ms 2.6ms 57.8MB 83ms 7ms pypy 3.10.14
dart 1.dart 115ms 1.6ms 9.0MB 110ms 0ms dart/exe 3.6.1
python 1.py 122ms 2.7ms 58.5MB 103ms 10ms pypy 3.10.14
kotlin 1-m.kt 141ms 6.8ms 90.5MB 270ms 27ms kotlin/jvm 21
kotlin 2.kt 141ms 4.0ms 5.7MB 193ms 0ms kotlin/native 1.8.21
typescript 2.ts 145ms 2.1ms 61.8MB 137ms 10ms deno 2.1.7
kotlin 2-m.kt 152ms 8.3ms 93.7MB 300ms 33ms kotlin/jvm 21
javascript 1.js 164ms 2.5ms 61.8MB 150ms 7ms node 23.6.0
javascript 2.js 164ms 0.9ms 60.8MB 157ms 10ms node 23.6.0
csharp 2.cs 166ms 1.3ms 35.5MB 147ms 7ms dotnet 9.0.102
typescript 1.ts 169ms 2.4ms 59.6MB 157ms 10ms deno 2.1.7
kotlin 1.kt 178ms 5.5ms 5.9MB 230ms 0ms kotlin/native 1.8.21
ruby 1.rb 193ms 0.3ms 13.6MB 177ms 3ms ruby/yjit 3.4.1
ruby 1.rb 294ms 3.6ms 12.9MB 273ms 7ms ruby 3.4.1
javascript 1.js 323ms 3.2ms 133.9MB 347ms 83ms bun 1.1.45
python 1.py 345ms 2.4ms 8.5MB 337ms 0ms pyston 3.8.12
javascript 2.js 359ms 16ms 126.8MB 380ms 60ms bun 1.1.45
python 2.py 390ms 1.7ms 8.1MB 377ms 0ms pyston 3.8.12
nim 1.nim 493ms 4.9ms 1.5MB 480ms 0ms nim/clang 2.2.0
nim 1.nim 519ms 32ms 1.3MB 510ms 0ms nim 2.2.0
ruby 1-m.rb 519ms 28ms 368.2MB 1017ms 127ms truffleruby 24.1.2
python 1.py 523ms 7.0ms 9.0MB 510ms 0ms cpython 3.13.1
python 2.py 622ms 5.9ms 8.6MB 607ms 0ms cpython 3.13.1
csharp 1.cs 1609ms 2.2ms 36.8MB 1597ms 7ms dotnet 9.0.102
csharp 1.cs 1817ms 2.0ms 16.9MB 1793ms 7ms dotnet/aot 9.0.102
csharp 1.cs 1821ms 18ms 30.8MB 1803ms 7ms mono 6.12.0