All nsieve problem benchmarks

Current benchmark data was generated on Mon Apr 14 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.)

nsieve

Input: 12

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
zig 1.zig 263ms 1.3ms 40.1MB 250ms 0ms zig 0.14.0
c 1.c 279ms 1.8ms 40.9MB 263ms 0ms clang 14.0.0-1ubuntu1.1
c 1.c 281ms 2.9ms 40.2MB 263ms 0ms zigcc 0.14.0
go 1.go 287ms 7.7ms 39.7MB 273ms 0ms tinygo 0.37.0
nim 1.nim 289ms 6.8ms 41.5MB 277ms 0ms nim 2.2.2
crystal 2.cr 298ms 3.7ms 8.1MB 287ms 0ms crystal 1.16.0
v 1.v 301ms 2.5ms 40.2MB 287ms 0ms v/clang 0.4.10
c 1.c 301ms 7.8ms 41.0MB 283ms 0ms gcc 14.2.0
v 1.v 307ms 2.3ms 41.1MB 297ms 0ms v/clang+gc 0.4.10
rust 1.rs 308ms 4.4ms 40.9MB 293ms 0ms rustc 1.86.0
go 1.go 310ms 4.7ms 71.6MB 293ms 0ms go 1.24.2
csharp 1.cs 316ms 7.0ms 78.7MB 300ms 3ms dotnet/aot 9.0.203
rust 2.rs 328ms 1.8ms 6.6MB 317ms 0ms rustc 1.86.0
zig 2.zig 328ms 2.0ms 6.0MB 320ms 0ms zig 0.14.0
nim 1.nim 329ms 8.1ms 41.8MB 317ms 0ms nim/clang 2.2.2
v 2.v 331ms 2.0ms 6.9MB 320ms 0ms v/clang+gc 0.4.10
v 2.v 332ms 2.6ms 6.1MB 320ms 0ms v/clang 0.4.10
csharp 1.cs 340ms 5.0ms 96.2MB 313ms 13ms dotnet 9.0.203
d 1.d 349ms 1.2ms 77.3MB 337ms 0ms dmd 2.111.0
odin 1.odin 351ms 14ms 40.5MB 333ms 0ms odin 2024
d 1.d 353ms 6.9ms 42.9MB 337ms 3ms ldc2 1.40.1
wasm 2.rs 372ms 4.5ms 22.0MB 360ms 0ms wasmtime 31.0.0
csharp 2.cs 395ms 3.2ms 17.6MB 380ms 0ms dotnet/aot 9.0.203
csharp 2.cs 398ms 8.9ms 35.5MB 377ms 10ms dotnet 9.0.203
crystal 1.cr 425ms 7.5ms 62.4MB 410ms 0ms crystal 1.16.0
go 2.go 425ms 4.9ms 21.4MB 413ms 0ms tinygo 0.37.0
java 1.java 431ms 12ms 115.9MB 483ms 23ms openjdk 21
codon 1-m.py 439ms 1.9ms 47.6MB 740ms 3ms codon 0.18.2
java 1.java 477ms 33ms 118.4MB 523ms 27ms openjdk 23
wasm 1.rs 481ms 4.7ms 56.1MB 463ms 0ms wasmtime 31.0.0
cpp 1.cpp 489ms 5.4ms 7.3MB 477ms 0ms g++ 11.4.0
cpp 1.cpp 528ms 1.2ms 7.8MB 520ms 0ms clang++ 14.0.0-1ubuntu1.1
csharp 1.cs 556ms 7.3ms 83.9MB 533ms 10ms mono 6.12.0
java 1-m.java 620ms 8.0ms 218.4MB 897ms 63ms graal/jvm 17.0.8
java 1.java 625ms 9.3ms 112.7MB 537ms 163ms openjdk/zgc 21
odin 2.odin 717ms 45ms 6.5MB 703ms 0ms odin 2024
java 2.java 782ms 2.9ms 56.8MB 840ms 17ms openjdk 21
go 2.go 801ms 7.5ms 21.5MB 783ms 10ms go 1.24.2
java 2.java 801ms 16ms 60.2MB 853ms 20ms openjdk 23
d 2.d 844ms 2.0ms 49.1MB 827ms 3ms ldc2 1.40.1
java 2.java 850ms 3.1ms 53.3MB 780ms 147ms openjdk/zgc 21
ocaml 1.ml 1018ms 5.8ms 550.4MB 963ms 40ms ocaml 5.3.0
d 2.d 1166ms 3.1ms 51.0MB 1150ms 3ms dmd 2.111.0
java 2-m.java 1327ms 5.9ms 242.0MB 2380ms 100ms graal/jvm 17.0.8
codon 2.py 1566ms 35ms 100.8MB 1870ms 27ms codon 0.18.2
csharp 2.cs 1871ms 22ms 31.1MB 1857ms 0ms mono 6.12.0
ocaml 2.ml 1884ms 9.4ms 17.2MB 1867ms 0ms ocaml 5.3.0
python 1.py 2598ms 14ms 369.5MB 2527ms 60ms pypy 3.10.16
python 2.py 3071ms 19ms 633.0MB 2897ms 157ms pyston 3.8.12
python 1.py 4831ms 76ms 320.4MB 4770ms 47ms pyston 3.8.12
acton 1.act timeout 0.0ms 561.0MB 6803ms 83ms actonc 0.24.1
python 1.py timeout 0.0ms 321.3MB 4960ms 27ms cpython 3.13.3
python 2.py timeout 0.0ms 633.8MB 4833ms 150ms cpython 3.13.3
python 2.py timeout 0.0ms 959.7MB 4723ms 260ms pypy 3.10.16
ruby 1.rb timeout 0.0ms 325.4MB 4860ms 130ms ruby 3.4.2
ruby 1.rb timeout 0.0ms 327.0MB 4853ms 137ms ruby/yjit 3.4.2
ruby 1.rb timeout 0.0ms 703.0MB 5090ms 140ms truffleruby 24.2.0

Input: 10

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
zig 1.zig 50ms 1.1ms 10.8MB 40ms 0ms zig 0.14.0
c 1.c 52ms 2.6ms 11.8MB 40ms 0ms gcc 14.2.0
nim 1.nim 53ms 2.7ms 11.5MB 40ms 0ms nim 2.2.2
c 1.c 53ms 0.9ms 11.5MB 40ms 0ms clang 14.0.0-1ubuntu1.1
go 1.go 54ms 2.7ms 10.4MB 47ms 0ms tinygo 0.37.0
odin 1.odin 55ms 2.3ms 11.4MB 43ms 0ms odin 2024
nim 1.nim 56ms 3.9ms 11.8MB 43ms 0ms nim/clang 2.2.2
rust 1.rs 59ms 2.9ms 11.6MB 47ms 0ms rustc 1.86.0
c 1.c 59ms 3.0ms 11.0MB 50ms 0ms zigcc 0.14.0
v 1.v 59ms 3.2ms 11.7MB 50ms 0ms v/clang+gc 0.4.10
v 1.v 59ms 1.2ms 11.0MB 50ms 0ms v/clang 0.4.10
d 1.d 61ms 0.8ms 15.0MB 50ms 0ms ldc2 1.40.1
csharp 1.cs 64ms 0.5ms 24.9MB 50ms 0ms dotnet/aot 9.0.203
go 1.go 65ms 3.1ms 21.6MB 57ms 0ms go 1.24.2
d 1.d 74ms 1.5ms 27.2MB 63ms 0ms dmd 2.111.0
crystal 2.cr 74ms 1.4ms 4.4MB 67ms 0ms crystal 1.16.0
zig 2.zig 80ms 0.0ms 2.3MB 70ms 0ms zig 0.14.0
v 2.v 82ms 1.6ms 3.1MB 73ms 0ms v/clang+gc 0.4.10
v 2.v 83ms 1.8ms 2.4MB 73ms 0ms v/clang 0.4.10
rust 2.rs 83ms 1.0ms 2.9MB 70ms 0ms rustc 1.86.0
crystal 1.cr 88ms 0.8ms 13.0MB 80ms 0ms crystal 1.16.0
csharp 1.cs 96ms 1.4ms 42.5MB 73ms 10ms dotnet 9.0.203
wasm 1.rs 97ms 1.6ms 27.0MB 83ms 0ms wasmtime 31.0.0
wasm 2.rs 98ms 1.4ms 18.3MB 83ms 0ms wasmtime 31.0.0
csharp 2.cs 102ms 2.1ms 11.9MB 90ms 0ms dotnet/aot 9.0.203
go 2.go 106ms 1.1ms 4.9MB 97ms 0ms tinygo 0.37.0
cpp 1.cpp 120ms 1.2ms 3.6MB 110ms 0ms g++ 11.4.0
codon 1-m.py 127ms 2.2ms 18.3MB 430ms 0ms codon 0.18.2
csharp 2.cs 128ms 1.1ms 30.0MB 110ms 10ms dotnet 9.0.203
cpp 1.cpp 132ms 1.5ms 4.1MB 120ms 0ms clang++ 14.0.0-1ubuntu1.1
csharp 1.cs 146ms 2.8ms 38.1MB 133ms 0ms mono 6.12.0
java 1.java 154ms 3.2ms 64.7MB 203ms 20ms openjdk 21
java 1.java 160ms 4.0ms 68.3MB 207ms 20ms openjdk 23
odin 2.odin 179ms 13ms 4.1MB 173ms 0ms odin 2024
go 2.go 195ms 2.9ms 6.1MB 183ms 0ms go 1.24.2
ocaml 1.ml 203ms 4.9ms 140.7MB 183ms 10ms ocaml 5.3.0
java 1-m.java 205ms 7.0ms 124.6MB 293ms 37ms graal/jvm 17.0.8
d 2.d 208ms 1.8ms 14.9MB 197ms 0ms ldc2 1.40.1
java 2.java 265ms 1.0ms 49.9MB 323ms 27ms openjdk 21
java 2.java 271ms 2.5ms 50.6MB 327ms 23ms openjdk 23
java 1.java 288ms 1.8ms 61.5MB 213ms 147ms openjdk/zgc 21
d 2.d 292ms 0.6ms 18.9MB 280ms 0ms dmd 2.111.0
java 2.java 374ms 4.3ms 47.6MB 313ms 143ms openjdk/zgc 21
codon 2-m.py 396ms 4.4ms 27.2MB 707ms 3ms codon 0.18.2
ocaml 2.ml 463ms 1.3ms 9.1MB 450ms 0ms ocaml 5.3.0
java 2-m.java 478ms 6.0ms 149.5MB 853ms 60ms graal/jvm 17.0.8
csharp 2.cs 483ms 2.6ms 21.1MB 470ms 0ms mono 6.12.0
python 1.py 545ms 16ms 135.2MB 510ms 20ms pypy 3.10.16
python 2.py 746ms 6.9ms 164.2MB 707ms 27ms pyston 3.8.12
python 1.py 1093ms 21ms 86.0MB 1070ms 10ms pyston 3.8.12
python 2.py 1471ms 14ms 165.0MB 1430ms 30ms cpython 3.13.3
python 2.py 1569ms 31ms 290.2MB 1480ms 77ms pypy 3.10.16
ruby 1.rb 1725ms 19ms 476.7MB 2387ms 160ms truffleruby 24.2.0
acton 1.act 2396ms 10ms 192.3MB 2950ms 50ms actonc 0.24.1
python 1.py 2775ms 8.1ms 86.9MB 2750ms 10ms cpython 3.13.3
ruby 1.rb 3412ms 46ms 131.8MB 3323ms 73ms ruby/yjit 3.4.2
ruby 1.rb 4494ms 36ms 131.1MB 4403ms 77ms ruby 3.4.2