All lru problem benchmarks

Current benchmark data was generated on Tue Mar 25 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 33ms 0.3ms 2.8MB 23ms 0ms zig 0.14.0
crystal 0-unsafe.cr 37ms 1.3ms 2.9MB 30ms 0ms crystal 1.15.1
rust 0-unsafe.rs 42ms 4.5ms 1.8MB 37ms 0ms rustc 1.85.1
rust 1.rs 52ms 8.0ms 2.0MB 47ms 0ms rustc 1.85.1
crystal 1.cr 65ms 2.1ms 2.9MB 57ms 0ms crystal 1.15.1
wasm 1.rs 89ms 1.7ms 17.3MB 80ms 0ms wasmtime 31.0.0
csharp 2.cs 97ms 3.1ms 9.8MB 87ms 0ms dotnet/aot 9.0.202
nim 2.nim 112ms 1.0ms 1.6MB 100ms 0ms nim/clang 2.2.2
nim 2.nim 112ms 1.7ms 1.8MB 103ms 0ms nim 2.2.2
go 3.go 123ms 2.4ms 3.5MB 113ms 0ms go 1.24.1
d 1.d 132ms 0.5ms 5.9MB 123ms 0ms ldc2 1.40.1
go 3.go 134ms 3.6ms 0.5MB 127ms 0ms tinygo 0.37.0
haxe 1.hx 137ms 1.9ms 20.4MB 120ms 3ms haxe/cpp 4.3.6
haxe 1.hx 137ms 2.1ms 3.1MB 130ms 0ms haxe/hl/c 4.3.6
python 2.py 147ms 1.7ms 58.3MB 127ms 10ms pypy 3.10.16
odin 1.odin 148ms 2.9ms 1.6MB 140ms 0ms odin 2024
csharp 2.cs 148ms 3.1ms 22.8MB 137ms 0ms mono 6.12.0
haxe 1.hx 156ms 1.3ms 3.8MB 147ms 0ms haxe/hl/jit 1.15.0
dart 2.dart 169ms 0.8ms 9.1MB 157ms 0ms dart/exe 3.7.2
d 1.d 177ms 2.7ms 7.9MB 163ms 7ms dmd 2.110.0
ocaml 1.ml 178ms 2.2ms 6.4MB 170ms 0ms ocaml 5.3.0
kotlin 1-m.kt 181ms 4.2ms 96.8MB 300ms 27ms kotlin/jvm 21
python 1.py 184ms 4.8ms 59.3MB 160ms 10ms pypy 3.10.16
kotlin 2-m.kt 198ms 2.0ms 103.5MB 420ms 40ms kotlin/jvm 21
v 1.v 249ms 3.9ms 1.3MB 240ms 0ms v/clang 0.4.10
csharp 2.cs 253ms 2.7ms 29.5MB 240ms 7ms dotnet 9.0.202
v 1.v 262ms 3.5ms 2.1MB 253ms 0ms v/clang+gc 0.4.10
typescript 2.ts 279ms 3.1ms 61.4MB 267ms 13ms deno 2.2.5
kotlin 2.kt 310ms 2.1ms 5.9MB 433ms 20ms kotlin/native 1.8.21
javascript 2.js 315ms 2.2ms 62.6MB 307ms 13ms node 23.10.0
ruby 1.rb 332ms 5.1ms 13.5MB 313ms 0ms ruby/yjit 3.4.2
dart 1.dart 496ms 2.5ms 9.1MB 480ms 0ms dart/exe 3.7.2
kotlin 1.kt 518ms 11ms 5.8MB 620ms 3ms kotlin/native 1.8.21
ruby 1.rb 524ms 1.2ms 13.0MB 510ms 0ms ruby 3.4.2
javascript 1.js 565ms 4.9ms 60.8MB 543ms 13ms node 23.10.0
typescript 1.ts 574ms 2.4ms 61.6MB 553ms 13ms deno 2.2.5
javascript 2.js 669ms 4.6ms 122.7MB 723ms 60ms bun 1.2.6
ruby 1-m.rb 710ms 32ms 365.2MB 1233ms 153ms truffleruby 24.2.0
python 1.py 721ms 2.1ms 8.9MB 707ms 0ms pyston 3.8.12
javascript 1.js 839ms 6.5ms 111.5MB 937ms 80ms bun 1.2.6
python 2.py 846ms 12ms 8.5MB 837ms 0ms pyston 3.8.12
csharp 1.cs 1059ms 4.4ms 13.3MB 1040ms 3ms dotnet/aot 9.0.202
python 1.py 1125ms 14ms 9.3MB 1113ms 0ms cpython 3.13.2
csharp 1.cs 1330ms 8.7ms 32.6MB 1317ms 13ms dotnet 9.0.202
python 2.py 1331ms 3.3ms 9.0MB 1320ms 0ms cpython 3.13.2
csharp 1.cs 3392ms 39ms 47.5MB 3350ms 33ms mono 6.12.0
nim 1.nim timeout 0.0ms 1.5MB 4990ms 0ms nim/clang 2.2.2
nim 1.nim timeout 0.0ms 1.3MB 4990ms 0ms nim 2.2.2

Input: 1000 3000000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
zig 1.zig 95ms 2.4ms 2.8MB 87ms 0ms zig 0.14.0
crystal 0-unsafe.cr 103ms 1.4ms 2.9MB 90ms 0ms crystal 1.15.1
rust 0-unsafe.rs 143ms 14ms 1.9MB 137ms 0ms rustc 1.85.1
crystal 1.cr 186ms 1.8ms 2.9MB 177ms 0ms crystal 1.15.1
rust 1.rs 193ms 34ms 2.0MB 183ms 0ms rustc 1.85.1
wasm 1.rs 251ms 3.2ms 16.9MB 240ms 0ms wasmtime 31.0.0
csharp 2.cs 270ms 2.8ms 9.8MB 257ms 0ms dotnet/aot 9.0.202
kotlin 2-m.kt 307ms 3.5ms 215.7MB 537ms 43ms kotlin/jvm 21
nim 2.nim 328ms 1.5ms 1.6MB 320ms 0ms nim/clang 2.2.2
nim 2.nim 331ms 2.1ms 1.4MB 320ms 0ms nim 2.2.2
kotlin 1.kt 335ms 2.6ms 204.7MB 443ms 43ms kotlin/jvm 21
python 2.py 345ms 4.6ms 59.2MB 320ms 10ms pypy 3.10.16
csharp 2.cs 364ms 2.7ms 21.3MB 350ms 0ms mono 6.12.0
d 1.d 374ms 1.0ms 5.9MB 363ms 13ms ldc2 1.40.1
haxe 1.hx 379ms 2.6ms 25.5MB 363ms 7ms haxe/cpp 4.3.6
python 1.py 383ms 1.7ms 60.3MB 360ms 10ms pypy 3.10.16
go 3.go 385ms 7.4ms 3.5MB 377ms 0ms go 1.24.1
go 3.go 389ms 4.4ms 0.5MB 377ms 0ms tinygo 0.37.0
haxe 1.hx 400ms 2.0ms 3.0MB 387ms 3ms haxe/hl/c 4.3.6
csharp 2.cs 407ms 7.8ms 29.1MB 390ms 10ms dotnet 9.0.202
odin 1.odin 431ms 3.0ms 1.6MB 423ms 0ms odin 2024
haxe 1.hx 460ms 8.1ms 3.8MB 447ms 0ms haxe/hl/jit 1.15.0
dart 2.dart 488ms 15ms 9.1MB 473ms 0ms dart/exe 3.7.2
d 1.d 514ms 1.2ms 7.9MB 500ms 13ms dmd 2.110.0
ocaml 1.ml 535ms 18ms 6.6MB 523ms 0ms ocaml 5.3.0
v 1.v 722ms 7.3ms 1.3MB 713ms 0ms v/clang 0.4.10
typescript 2.ts 749ms 3.9ms 70.5MB 727ms 23ms deno 2.2.5
v 1.v 784ms 25ms 2.1MB 773ms 0ms v/clang+gc 0.4.10
javascript 2.js 858ms 3.1ms 69.0MB 843ms 20ms node 23.10.0
ruby 1.rb 886ms 4.7ms 13.5MB 863ms 10ms ruby/yjit 3.4.2
kotlin 2.kt 927ms 16ms 7.1MB 1330ms 50ms kotlin/native 1.8.21
ruby 1-m.rb 1259ms 50ms 413.3MB 1827ms 197ms truffleruby 24.2.0
dart 1.dart 1458ms 8.1ms 9.3MB 1440ms 7ms dart/exe 3.7.2
ruby 1.rb 1482ms 23ms 13.0MB 1463ms 7ms ruby 3.4.2
kotlin 1.kt 1539ms 8.4ms 5.8MB 1870ms 23ms kotlin/native 1.8.21
javascript 1.js 1605ms 6.6ms 67.4MB 1587ms 17ms node 23.10.0
typescript 1.ts 1655ms 6.5ms 66.6MB 1633ms 17ms deno 2.2.5
javascript 2.js 1868ms 19ms 122.7MB 2037ms 87ms bun 1.2.6
python 1.py 2123ms 11ms 8.9MB 2107ms 0ms pyston 3.8.12
javascript 1.js 2390ms 15ms 111.9MB 2710ms 157ms bun 1.2.6
python 2.py 2478ms 14ms 8.5MB 2463ms 0ms pyston 3.8.12
csharp 1.cs 3140ms 32ms 13.3MB 3113ms 17ms dotnet/aot 9.0.202
python 1.py 3384ms 51ms 9.3MB 3370ms 0ms cpython 3.13.2
csharp 1.cs 3697ms 152ms 32.9MB 3680ms 23ms dotnet 9.0.202
python 2.py 4191ms 262ms 9.0MB 4180ms 0ms cpython 3.13.2
csharp 1.cs timeout 0.0ms 45.6MB 4943ms 47ms mono 6.12.0
nim 1.nim timeout 0.0ms 1.5MB 4990ms 0ms nim/clang 2.2.2
nim 1.nim timeout 0.0ms 1.3MB 4990ms 0ms nim 2.2.2

Input: 100 500000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
zig 1.zig 16ms 1.3ms 1.3MB 10ms 0ms zig 0.14.0
crystal 0-unsafe.cr 17ms 0.5ms 2.9MB 10ms 0ms crystal 1.15.1
rust 0-unsafe.rs 26ms 0.9ms 1.8MB 20ms 0ms rustc 1.85.1
rust 1.rs 29ms 0.1ms 1.8MB 20ms 0ms rustc 1.85.1
crystal 1.cr 31ms 1.7ms 2.9MB 20ms 0ms crystal 1.15.1
wasm 1.rs 48ms 0.2ms 16.8MB 40ms 0ms wasmtime 31.0.0
nim 2.nim 50ms 1.8ms 1.5MB 40ms 0ms nim/clang 2.2.2
nim 2.nim 50ms 1.3ms 1.3MB 40ms 0ms nim 2.2.2
go 3.go 52ms 2.6ms 3.5MB 43ms 0ms go 1.24.1
csharp 2.cs 53ms 2.4ms 9.8MB 40ms 0ms dotnet/aot 9.0.202
d 1.d 57ms 0.9ms 5.9MB 43ms 0ms ldc2 1.40.1
haxe 1.hx 64ms 2.3ms 12.3MB 57ms 0ms haxe/cpp 4.3.6
go 3.go 65ms 2.0ms 0.4MB 57ms 0ms tinygo 0.37.0
haxe 1.hx 67ms 0.6ms 3.0MB 60ms 0ms haxe/hl/c 4.3.6
odin 1.odin 68ms 2.2ms 1.6MB 60ms 0ms odin 2024
ocaml 1.ml 77ms 0.5ms 6.1MB 70ms 0ms ocaml 5.3.0
dart 2.dart 80ms 5.0ms 9.3MB 67ms 0ms dart/exe 3.7.2
d 1.d 80ms 1.3ms 7.9MB 70ms 0ms dmd 2.110.0
haxe 1.hx 80ms 1.0ms 3.8MB 70ms 0ms haxe/hl/jit 1.15.0
v 1.v 91ms 2.5ms 1.3MB 83ms 0ms v/clang 0.4.10
csharp 2.cs 94ms 2.5ms 21.1MB 80ms 0ms mono 6.12.0
v 1.v 101ms 1.1ms 2.1MB 90ms 0ms v/clang+gc 0.4.10
python 2.py 108ms 2.1ms 57.9MB 83ms 10ms pypy 3.10.16
dart 1.dart 117ms 5.6ms 8.9MB 107ms 0ms dart/exe 3.7.2
python 1.py 124ms 2.8ms 58.7MB 97ms 13ms pypy 3.10.16
kotlin 2.kt 142ms 1.4ms 3.6MB 200ms 0ms kotlin/native 1.8.21
kotlin 1-m.kt 142ms 1.4ms 92.3MB 267ms 30ms kotlin/jvm 21
typescript 2.ts 143ms 0.9ms 56.7MB 130ms 13ms deno 2.2.5
kotlin 2-m.kt 153ms 3.2ms 95.8MB 303ms 30ms kotlin/jvm 21
csharp 2.cs 162ms 2.3ms 29.1MB 143ms 7ms dotnet 9.0.202
javascript 1.js 166ms 0.5ms 58.4MB 153ms 7ms node 23.10.0
javascript 2.js 168ms 0.8ms 57.3MB 160ms 10ms node 23.10.0
kotlin 1.kt 171ms 1.8ms 3.8MB 217ms 0ms kotlin/native 1.8.21
typescript 1.ts 179ms 11ms 57.2MB 160ms 13ms deno 2.2.5
ruby 1.rb 195ms 2.2ms 13.5MB 177ms 7ms ruby/yjit 3.4.2
ruby 1.rb 289ms 2.1ms 12.9MB 273ms 0ms ruby 3.4.2
javascript 1.js 325ms 1.7ms 115.4MB 360ms 77ms bun 1.2.6
python 1.py 350ms 0.8ms 8.5MB 337ms 0ms pyston 3.8.12
javascript 2.js 361ms 4.4ms 126.3MB 383ms 47ms bun 1.2.6
python 2.py 388ms 2.7ms 8.1MB 380ms 0ms pyston 3.8.12
nim 1.nim 445ms 9.6ms 1.5MB 437ms 0ms nim/clang 2.2.2
nim 1.nim 480ms 3.4ms 1.3MB 473ms 0ms nim 2.2.2
ruby 1-m.rb 514ms 28ms 357.0MB 993ms 137ms truffleruby 24.2.0
python 1.py 535ms 0.5ms 9.0MB 520ms 0ms cpython 3.13.2
python 2.py 638ms 8.7ms 8.6MB 623ms 0ms cpython 3.13.2
csharp 1.cs 1629ms 4.7ms 32.5MB 1620ms 13ms dotnet 9.0.202
csharp 1.cs 1805ms 4.0ms 12.9MB 1787ms 3ms dotnet/aot 9.0.202
csharp 1.cs 1830ms 4.2ms 26.7MB 1813ms 0ms mono 6.12.0