All lru problem benchmarks

Current benchmark data was generated on Sun Jun 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.)

lru

Input: 1000 1000000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
crystal 0-unsafe.cr 35ms 0.6ms 3.0MB 30ms 0ms crystal 1.16.3
zig 1.zig 35ms 0.8ms 2.8MB 30ms 0ms zig 0.14.1
rust 0-unsafe.rs 37ms 4.5ms 1.9MB 27ms 0ms rustc 1.87.0
rust 1.rs 45ms 1.9ms 1.9MB 40ms 0ms rustc 1.87.0
crystal 1.cr 65ms 1.6ms 3.0MB 57ms 0ms crystal 1.16.3
wasm 1.rs 91ms 1.0ms 17.7MB 80ms 0ms wasmtime 33.0.0
csharp 2.cs 94ms 4.1ms 9.9MB 83ms 0ms dotnet/aot 9.0.300
nim 2.nim 111ms 2.3ms 1.6MB 100ms 0ms nim/clang 2.2.4
nim 2.nim 114ms 1.7ms 1.4MB 110ms 0ms nim 2.2.4
go 3.go 120ms 4.7ms 3.5MB 113ms 0ms go 1.24.3
d 1.d 131ms 1.4ms 6.1MB 120ms 0ms ldc2 1.40.1
go 3.go 132ms 2.8ms 0.5MB 123ms 0ms tinygo 0.37.0
haxe 1.hx 135ms 1.8ms 20.5MB 120ms 3ms haxe/cpp 4.3.6
haxe 1.hx 136ms 1.7ms 3.1MB 127ms 0ms haxe/hl/c 4.3.6
python 2.py 149ms 4.3ms 58.4MB 120ms 13ms pypy 3.10.16
csharp 2.cs 150ms 2.5ms 23.2MB 133ms 3ms mono 6.12.0
haxe 1.hx 156ms 2.5ms 3.8MB 150ms 0ms haxe/hl/jit 1.15.0
odin 1.odin 157ms 1.1ms 1.6MB 150ms 0ms odin 2024
kotlin 2.kt 166ms 3.8ms 12.4MB 170ms 0ms kotlin/native 2.1.20
dart 2.dart 166ms 2.9ms 9.1MB 157ms 0ms dart/exe 3.8.1
python 1.py 181ms 4.1ms 59.4MB 157ms 10ms pypy 3.10.16
d 1.d 187ms 22ms 7.9MB 177ms 0ms dmd 2.111.0
ocaml 1.ml 187ms 3.7ms 6.4MB 177ms 0ms ocaml 5.3.0
kotlin 1-m.kt 195ms 3.4ms 95.1MB 327ms 27ms kotlin/jvm 21
kotlin 2-m.kt 200ms 3.1ms 102.1MB 437ms 40ms kotlin/jvm 21
v 1.v 243ms 6.1ms 1.3MB 233ms 0ms v/clang 0.4.10
csharp 2.cs 253ms 4.8ms 29.4MB 237ms 10ms dotnet 9.0.300
v 1.v 256ms 1.5ms 2.1MB 250ms 0ms v/clang+gc 0.4.10
typescript 2.ts 288ms 12ms 62.9MB 273ms 17ms deno 2.3.5
javascript 2.js 304ms 2.7ms 64.1MB 293ms 13ms node 24.1.0
ruby 1.rb 345ms 2.2ms 13.5MB 327ms 10ms ruby/yjit 3.4.4
kotlin 1.kt 355ms 2.4ms 12.4MB 353ms 3ms kotlin/native 2.1.20
ruby 1.rb 531ms 3.8ms 12.9MB 507ms 10ms ruby 3.4.4
javascript 1.js 566ms 6.6ms 62.7MB 553ms 7ms node 24.1.0
dart 1.dart 570ms 3.8ms 8.8MB 557ms 0ms dart/exe 3.8.1
typescript 1.ts 585ms 3.6ms 61.6MB 567ms 13ms deno 2.3.5
javascript 2.js 634ms 5.2ms 123.1MB 710ms 43ms bun 1.2.15
ruby 1-m.rb 681ms 22ms 372.4MB 1237ms 140ms truffleruby 24.2.1
python 1.py 720ms 3.1ms 8.9MB 707ms 0ms pyston 3.8.12
javascript 1.js 830ms 15ms 106.3MB 903ms 87ms bun 1.2.15
python 2.py 844ms 8.9ms 8.5MB 830ms 0ms pyston 3.8.12
csharp 1.cs 1037ms 9.2ms 13.0MB 1020ms 3ms dotnet/aot 9.0.300
python 1.py 1166ms 4.3ms 9.5MB 1157ms 0ms cpython 3.13.3
csharp 1.cs 1324ms 54ms 32.8MB 1313ms 13ms dotnet 9.0.300
python 2.py 1359ms 24ms 9.1MB 1347ms 0ms cpython 3.13.3
csharp 1.cs 3334ms 47ms 43.8MB 3287ms 37ms mono 6.12.0
nim 1.nim timeout 0.0ms 1.5MB 4990ms 0ms nim/clang 2.2.4
nim 1.nim timeout 0.0ms 1.3MB 4990ms 0ms nim 2.2.4

Input: 1000 3000000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
zig 1.zig 95ms 3.4ms 2.8MB 87ms 0ms zig 0.14.1
crystal 0-unsafe.cr 99ms 1.4ms 3.0MB 90ms 0ms crystal 1.16.3
rust 0-unsafe.rs 144ms 3.7ms 1.8MB 133ms 0ms rustc 1.87.0
crystal 1.cr 191ms 5.3ms 3.0MB 183ms 0ms crystal 1.16.3
rust 1.rs 212ms 30ms 1.9MB 200ms 0ms rustc 1.87.0
wasm 1.rs 253ms 2.5ms 17.6MB 240ms 0ms wasmtime 33.0.0
csharp 2.cs 263ms 4.6ms 9.8MB 250ms 0ms dotnet/aot 9.0.300
kotlin 2-m.kt 317ms 3.3ms 213.3MB 553ms 43ms kotlin/jvm 21
nim 2.nim 328ms 1.4ms 1.6MB 320ms 0ms nim/clang 2.2.4
nim 2.nim 333ms 1.4ms 1.4MB 323ms 0ms nim 2.2.4
kotlin 1.kt 340ms 3.7ms 203.0MB 463ms 37ms kotlin/jvm 21
python 2.py 342ms 3.7ms 59.1MB 320ms 10ms pypy 3.10.16
csharp 2.cs 362ms 2.4ms 23.2MB 350ms 0ms mono 6.12.0
d 1.d 376ms 2.9ms 5.9MB 360ms 17ms ldc2 1.40.1
haxe 1.hx 381ms 3.1ms 25.8MB 367ms 3ms haxe/cpp 4.3.6
go 3.go 384ms 3.9ms 0.5MB 373ms 0ms tinygo 0.37.0
go 3.go 392ms 5.4ms 3.5MB 383ms 0ms go 1.24.3
python 1.py 395ms 7.5ms 60.4MB 367ms 13ms pypy 3.10.16
haxe 1.hx 396ms 2.2ms 3.0MB 383ms 0ms haxe/hl/c 4.3.6
csharp 2.cs 403ms 4.6ms 29.3MB 387ms 10ms dotnet 9.0.300
haxe 1.hx 453ms 3.7ms 3.8MB 443ms 0ms haxe/hl/jit 1.15.0
odin 1.odin 458ms 3.6ms 1.6MB 447ms 0ms odin 2024
kotlin 2.kt 474ms 2.5ms 12.4MB 500ms 0ms kotlin/native 2.1.20
dart 2.dart 479ms 4.6ms 9.3MB 463ms 0ms dart/exe 3.8.1
d 1.d 511ms 3.0ms 7.9MB 500ms 13ms dmd 2.111.0
ocaml 1.ml 540ms 17ms 6.6MB 530ms 0ms ocaml 5.3.0
v 1.v 717ms 0.9ms 1.3MB 710ms 0ms v/clang 0.4.10
typescript 2.ts 736ms 4.6ms 71.3MB 723ms 17ms deno 2.3.5
v 1.v 768ms 2.8ms 2.1MB 760ms 0ms v/clang+gc 0.4.10
javascript 2.js 833ms 3.9ms 71.4MB 820ms 17ms node 24.1.0
ruby 1.rb 906ms 5.6ms 13.5MB 890ms 3ms ruby/yjit 3.4.4
kotlin 1.kt 1041ms 16ms 12.5MB 1067ms 3ms kotlin/native 2.1.20
ruby 1-m.rb 1181ms 17ms 400.4MB 1707ms 157ms truffleruby 24.2.1
ruby 1.rb 1478ms 4.7ms 12.8MB 1460ms 3ms ruby 3.4.4
javascript 1.js 1610ms 3.9ms 69.4MB 1593ms 10ms node 24.1.0
typescript 1.ts 1682ms 3.4ms 69.1MB 1660ms 20ms deno 2.3.5
dart 1.dart 1700ms 6.4ms 9.3MB 1683ms 7ms dart/exe 3.8.1
javascript 2.js 1783ms 10.0ms 124.1MB 1957ms 77ms bun 1.2.15
python 1.py 2150ms 11ms 8.9MB 2140ms 0ms pyston 3.8.12
javascript 1.js 2362ms 4.9ms 106.4MB 2650ms 160ms bun 1.2.15
python 2.py 2522ms 10ms 8.5MB 2513ms 0ms pyston 3.8.12
csharp 1.cs 3102ms 23ms 13.4MB 3080ms 7ms dotnet/aot 9.0.300
python 1.py 3503ms 80ms 9.5MB 3490ms 0ms cpython 3.13.3
csharp 1.cs 3566ms 25ms 32.8MB 3547ms 20ms dotnet 9.0.300
python 2.py 4083ms 116ms 9.1MB 4070ms 0ms cpython 3.13.3
csharp 1.cs timeout 0.0ms 49.8MB 4947ms 43ms mono 6.12.0
nim 1.nim timeout 0.0ms 1.5MB 4990ms 0ms nim/clang 2.2.4
nim 1.nim timeout 0.0ms 1.3MB 4990ms 0ms nim 2.2.4

Input: 100 500000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
zig 1.zig 15ms 0.4ms 1.3MB 10ms 0ms zig 0.14.1
crystal 0-unsafe.cr 17ms 0.5ms 3.0MB 10ms 0ms crystal 1.16.3
rust 0-unsafe.rs 23ms 0.6ms 1.8MB 13ms 0ms rustc 1.87.0
rust 1.rs 29ms 0.6ms 1.8MB 20ms 0ms rustc 1.87.0
crystal 1.cr 30ms 0.8ms 3.0MB 20ms 0ms crystal 1.16.3
wasm 1.rs 47ms 0.4ms 17.5MB 37ms 0ms wasmtime 33.0.0
nim 2.nim 48ms 0.6ms 1.5MB 40ms 0ms nim/clang 2.2.4
csharp 2.cs 49ms 0.8ms 9.6MB 40ms 0ms dotnet/aot 9.0.300
go 3.go 51ms 2.7ms 3.5MB 40ms 0ms go 1.24.3
nim 2.nim 51ms 0.8ms 1.3MB 40ms 0ms nim 2.2.4
d 1.d 57ms 1.8ms 6.1MB 50ms 0ms ldc2 1.40.1
haxe 1.hx 63ms 1.0ms 12.3MB 50ms 0ms haxe/cpp 4.3.6
go 3.go 64ms 1.5ms 0.4MB 57ms 0ms tinygo 0.37.0
haxe 1.hx 68ms 1.6ms 3.0MB 60ms 0ms haxe/hl/c 4.3.6
odin 1.odin 70ms 0.2ms 1.6MB 60ms 0ms odin 2024
haxe 1.hx 77ms 0.4ms 3.6MB 70ms 0ms haxe/hl/jit 1.15.0
ocaml 1.ml 78ms 1.8ms 6.2MB 70ms 0ms ocaml 5.3.0
dart 2.dart 78ms 2.7ms 9.3MB 70ms 0ms dart/exe 3.8.1
d 1.d 79ms 1.5ms 7.9MB 70ms 0ms dmd 2.111.0
v 1.v 90ms 2.6ms 1.5MB 80ms 0ms v/clang 0.4.10
csharp 2.cs 92ms 2.6ms 22.8MB 83ms 0ms mono 6.12.0
kotlin 2.kt 94ms 0.9ms 12.8MB 83ms 0ms kotlin/native 2.1.20
v 1.v 103ms 2.0ms 2.1MB 93ms 0ms v/clang+gc 0.4.10
python 2.py 107ms 3.5ms 58.2MB 83ms 10ms pypy 3.10.16
dart 1.dart 115ms 1.0ms 9.0MB 103ms 0ms dart/exe 3.8.1
kotlin 1.kt 120ms 0.5ms 12.8MB 110ms 3ms kotlin/native 2.1.20
python 1.py 123ms 2.2ms 58.8MB 100ms 10ms pypy 3.10.16
typescript 2.ts 149ms 3.4ms 59.9MB 140ms 10ms deno 2.3.5
kotlin 1-m.kt 153ms 0.0ms 90.8MB 303ms 23ms kotlin/jvm 21
kotlin 2-m.kt 161ms 4.6ms 96.1MB 343ms 30ms kotlin/jvm 21
javascript 2.js 164ms 1.8ms 58.7MB 153ms 10ms node 24.1.0
csharp 2.cs 166ms 5.8ms 29.4MB 140ms 10ms dotnet 9.0.300
javascript 1.js 167ms 0.2ms 59.9MB 160ms 3ms node 24.1.0
typescript 1.ts 168ms 0.4ms 59.2MB 150ms 10ms deno 2.3.5
ruby 1.rb 194ms 1.0ms 13.5MB 177ms 7ms ruby/yjit 3.4.4
ruby 1.rb 292ms 3.6ms 12.8MB 280ms 7ms ruby 3.4.4
javascript 1.js 318ms 5.1ms 130.3MB 357ms 77ms bun 1.2.15
javascript 2.js 347ms 3.8ms 125.4MB 380ms 47ms bun 1.2.15
python 1.py 352ms 1.5ms 8.5MB 340ms 0ms pyston 3.8.12
python 2.py 384ms 4.5ms 8.1MB 373ms 0ms pyston 3.8.12
nim 1.nim 476ms 7.0ms 1.5MB 467ms 0ms nim/clang 2.2.4
nim 1.nim 480ms 4.8ms 1.3MB 473ms 0ms nim 2.2.4
ruby 1-m.rb 532ms 4.1ms 356.3MB 1023ms 140ms truffleruby 24.2.1
python 1.py 548ms 3.1ms 9.3MB 537ms 0ms cpython 3.13.3
python 2.py 667ms 2.4ms 8.8MB 653ms 0ms cpython 3.13.3
csharp 1.cs 1611ms 4.6ms 32.6MB 1603ms 10ms dotnet 9.0.300
csharp 1.cs 1815ms 5.9ms 12.9MB 1797ms 0ms dotnet/aot 9.0.300
csharp 1.cs 1829ms 5.2ms 28.9MB 1813ms 0ms mono 6.12.0