All nsieve problem benchmarks

Current benchmark data was generated on Sun Jul 13 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
c 1.c 267ms 3.7ms 41.0MB 253ms 0ms clang 14.0.0-1ubuntu1.1
zig 1.zig 270ms 5.1ms 40.2MB 257ms 0ms zig 0.14.1
nim 1.nim 271ms 4.0ms 41.5MB 263ms 0ms nim 2.2.4
odin 1.odin 275ms 5.4ms 40.6MB 257ms 3ms odin 2024
c 1.c 277ms 11ms 40.9MB 257ms 0ms gcc 15.1.0
c 1.c 282ms 4.5ms 40.3MB 267ms 0ms zigcc 0.14.1
d 1.d 300ms 2.3ms 45.7MB 287ms 0ms ldc2 1.41.0
rust 2.rs 303ms 3.7ms 6.6MB 293ms 0ms rustc 1.88.0
csharp 1.cs 304ms 6.0ms 78.7MB 283ms 7ms dotnet/aot 9.0.302
go 1.go 313ms 5.6ms 39.4MB 297ms 0ms tinygo 0.38.0
go 1.go 315ms 7.2ms 71.7MB 303ms 0ms go 1.24.5
v 1.v 321ms 15ms 40.3MB 307ms 0ms v/clang 0.4.11
nim 1.nim 322ms 6.8ms 41.8MB 313ms 0ms nim/clang 2.2.4
v 1.v 323ms 7.3ms 41.2MB 310ms 0ms v/clang+gc 0.4.11
v 2.v 329ms 1.3ms 6.1MB 320ms 0ms v/clang 0.4.11
zig 2.zig 330ms 3.2ms 6.0MB 320ms 0ms zig 0.14.1
v 2.v 331ms 4.8ms 6.9MB 323ms 0ms v/clang+gc 0.4.11
d 1.d 347ms 3.8ms 79.3MB 333ms 3ms dmd 2.111.0
crystal 2.cr 351ms 3.7ms 8.3MB 340ms 0ms crystal 1.16.3
csharp 1.cs 356ms 7.3ms 96.2MB 327ms 13ms dotnet 9.0.302
rust 1.rs 377ms 18ms 40.9MB 363ms 0ms rustc 1.88.0
wasm 2.rs 387ms 3.2ms 22.9MB 373ms 0ms wasmtime 34.0.1
java 1.java 390ms 0.8ms 118.4MB 430ms 23ms openjdk 23
java 1.java 391ms 5.0ms 115.1MB 447ms 23ms openjdk 21
csharp 2.cs 400ms 5.0ms 35.6MB 380ms 10ms dotnet 9.0.302
codon 1-m.py 410ms 9.1ms 48.4MB 713ms 3ms codon 0.19.0
crystal 1.cr 418ms 6.0ms 43.0MB 407ms 0ms crystal 1.16.3
csharp 2.cs 425ms 2.7ms 17.6MB 410ms 0ms dotnet/aot 9.0.302
wasm 1.rs 463ms 2.4ms 57.0MB 447ms 3ms wasmtime 34.0.1
go 2.go 470ms 3.6ms 20.0MB 457ms 0ms tinygo 0.38.0
cpp 1.cpp 484ms 1.6ms 7.3MB 477ms 0ms g++ 11.4.0
cpp 1.cpp 528ms 2.2ms 7.7MB 520ms 0ms clang++ 14.0.0-1ubuntu1.1
csharp 1.cs 543ms 7.6ms 84.0MB 520ms 10ms mono 6.12.0
java 1.java 561ms 6.7ms 112.6MB 463ms 160ms openjdk/zgc 21
java 1-m.java 626ms 57ms 271.3MB 907ms 73ms graal/jvm 17.0.8
odin 2.odin 737ms 2.6ms 6.5MB 723ms 0ms odin 2024
java 2.java 779ms 2.8ms 57.2MB 837ms 23ms openjdk 21
java 2.java 783ms 1.4ms 60.2MB 830ms 20ms openjdk 23
go 2.go 784ms 5.0ms 21.8MB 773ms 7ms go 1.24.5
d 2.d 843ms 2.4ms 49.7MB 830ms 3ms ldc2 1.41.0
java 2.java 853ms 0.8ms 53.3MB 780ms 147ms openjdk/zgc 21
codon 2.py 903ms 4.6ms 100.8MB 1207ms 20ms codon 0.19.0
ocaml 1.ml 945ms 11ms 547.9MB 883ms 47ms ocaml 5.3.0
d 2.d 1172ms 3.3ms 49.3MB 1157ms 3ms dmd 2.111.0
java 2-m.java 1413ms 80ms 290.5MB 2513ms 117ms graal/jvm 17.0.8
csharp 2.cs 1857ms 2.8ms 27.5MB 1840ms 0ms mono 6.12.0
ocaml 2.ml 1884ms 7.1ms 17.2MB 1870ms 0ms ocaml 5.3.0
python 1.py 2498ms 18ms 369.9MB 2430ms 53ms pypy 3.11.13
python 2.py 2971ms 13ms 632.9MB 2787ms 167ms pyston 3.8.12
python 1.py 4747ms 19ms 320.5MB 4687ms 47ms pyston 3.8.12
acton 1.act timeout 0.0ms 561.1MB 6640ms 77ms actonc 0.26.0
python 1.py timeout 0.0ms 321.4MB 4960ms 23ms cpython 3.13.5
python 2.py timeout 0.0ms 633.8MB 4823ms 163ms cpython 3.13.5
python 2.py timeout 0.0ms 1017.5MB 4707ms 280ms pypy 3.11.13
ruby 1.rb timeout 0.0ms 325.3MB 4850ms 133ms ruby 3.4.4
ruby 1.rb timeout 0.0ms 327.0MB 4847ms 140ms ruby/yjit 3.4.4
ruby 1.rb timeout 0.0ms 731.6MB 5070ms 153ms truffleruby 24.2.1

Input: 10

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
nim 1.nim 52ms 2.4ms 11.5MB 43ms 0ms nim 2.2.4
zig 1.zig 52ms 2.0ms 10.9MB 40ms 0ms zig 0.14.1
odin 1.odin 54ms 2.8ms 11.3MB 43ms 0ms odin 2024
c 1.c 56ms 2.7ms 11.8MB 43ms 0ms gcc 15.1.0
c 1.c 59ms 2.7ms 11.7MB 47ms 0ms clang 14.0.0-1ubuntu1.1
v 1.v 61ms 2.9ms 11.9MB 50ms 0ms v/clang+gc 0.4.11
go 1.go 63ms 3.8ms 21.6MB 53ms 0ms go 1.24.5
d 1.d 64ms 3.3ms 15.7MB 53ms 0ms ldc2 1.41.0
c 1.c 64ms 1.3ms 11.0MB 50ms 0ms zigcc 0.14.1
v 1.v 65ms 0.6ms 11.0MB 57ms 0ms v/clang 0.4.11
csharp 1.cs 65ms 1.6ms 24.7MB 50ms 0ms dotnet/aot 9.0.302
nim 1.nim 66ms 4.2ms 11.8MB 57ms 0ms nim/clang 2.2.4
rust 1.rs 68ms 4.3ms 11.6MB 57ms 0ms rustc 1.88.0
go 1.go 71ms 6.1ms 10.0MB 60ms 0ms tinygo 0.38.0
d 1.d 76ms 1.6ms 25.2MB 63ms 0ms dmd 2.111.0
rust 2.rs 77ms 1.6ms 2.9MB 70ms 0ms rustc 1.88.0
zig 2.zig 80ms 1.1ms 2.3MB 70ms 0ms zig 0.14.1
v 2.v 82ms 1.5ms 3.1MB 73ms 0ms v/clang+gc 0.4.11
v 2.v 83ms 2.1ms 2.4MB 73ms 0ms v/clang 0.4.11
crystal 2.cr 87ms 1.6ms 4.5MB 80ms 0ms crystal 1.16.3
crystal 1.cr 92ms 2.2ms 13.1MB 80ms 0ms crystal 1.16.3
wasm 1.rs 92ms 3.2ms 27.9MB 80ms 0ms wasmtime 34.0.1
wasm 2.rs 100ms 2.0ms 19.3MB 90ms 0ms wasmtime 34.0.1
csharp 1.cs 101ms 2.5ms 42.5MB 83ms 3ms dotnet 9.0.302
csharp 2.cs 106ms 0.6ms 12.0MB 97ms 0ms dotnet/aot 9.0.302
codon 1-m.py 118ms 3.1ms 18.9MB 423ms 0ms codon 0.19.0
go 2.go 118ms 3.3ms 4.1MB 110ms 0ms tinygo 0.38.0
cpp 1.cpp 119ms 1.7ms 3.6MB 110ms 0ms g++ 11.4.0
csharp 2.cs 131ms 4.7ms 29.9MB 110ms 10ms dotnet 9.0.302
cpp 1.cpp 133ms 0.8ms 4.0MB 120ms 0ms clang++ 14.0.0-1ubuntu1.1
csharp 1.cs 143ms 1.4ms 38.2MB 130ms 0ms mono 6.12.0
java 1.java 152ms 2.2ms 64.8MB 200ms 20ms openjdk 21
java 1.java 154ms 3.8ms 68.1MB 203ms 20ms openjdk 23
odin 2.odin 169ms 15ms 2.8MB 160ms 0ms odin 2024
ocaml 1.ml 178ms 0.8ms 142.3MB 153ms 10ms ocaml 5.3.0
go 2.go 194ms 1.7ms 6.1MB 187ms 0ms go 1.24.5
java 1-m.java 212ms 3.8ms 133.8MB 293ms 47ms graal/jvm 17.0.8
d 2.d 213ms 1.6ms 17.7MB 200ms 0ms ldc2 1.41.0
codon 2-m.py 236ms 3.0ms 27.6MB 540ms 3ms codon 0.19.0
java 2.java 262ms 8.9ms 50.3MB 310ms 20ms openjdk 23
java 2.java 263ms 4.7ms 49.3MB 330ms 20ms openjdk 21
java 1.java 278ms 4.5ms 61.5MB 197ms 143ms openjdk/zgc 21
d 2.d 291ms 1.5ms 19.6MB 280ms 0ms dmd 2.111.0
java 2.java 368ms 3.9ms 47.5MB 307ms 143ms openjdk/zgc 21
ocaml 2.ml 464ms 1.5ms 9.3MB 453ms 0ms ocaml 5.3.0
csharp 2.cs 480ms 0.7ms 21.1MB 463ms 0ms mono 6.12.0
java 2-m.java 483ms 1.9ms 140.6MB 857ms 63ms graal/jvm 17.0.8
python 1.py 525ms 4.9ms 135.5MB 487ms 20ms pypy 3.11.13
python 2.py 721ms 2.3ms 164.2MB 670ms 33ms pyston 3.8.12
python 1.py 1066ms 26ms 86.0MB 1043ms 10ms pyston 3.8.12
python 2.py 1385ms 12ms 290.8MB 1297ms 73ms pypy 3.11.13
python 2.py 1398ms 5.5ms 165.1MB 1353ms 30ms cpython 3.13.5
ruby 1-m.rb 1697ms 10ms 473.8MB 2493ms 170ms truffleruby 24.2.1
acton 1.act 2437ms 22ms 192.3MB 2917ms 53ms actonc 0.26.0
python 1.py 2846ms 21ms 87.0MB 2817ms 10ms cpython 3.13.5
ruby 1.rb 3416ms 80ms 131.8MB 3323ms 83ms ruby/yjit 3.4.4
ruby 1.rb 4472ms 16ms 131.0MB 4383ms 73ms ruby 3.4.4