All nsieve problem benchmarks

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

nsieve

Input: 12

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
odin 1.odin 263ms 1.5ms 40.6MB 250ms 0ms odin 2024
c 1.c 266ms 3.7ms 40.9MB 250ms 0ms gcc 15.1.0
zig 1.zig 267ms 6.8ms 40.2MB 250ms 0ms zig 0.14.1
c 1.c 268ms 5.1ms 41.0MB 253ms 0ms clang 14.0.0-1ubuntu1.1
nim 1.nim 274ms 4.6ms 42.9MB 260ms 0ms nim 2.2.4
c 1.c 283ms 6.3ms 40.3MB 270ms 0ms zigcc 0.14.1
v 1.v 299ms 7.9ms 41.2MB 287ms 0ms v/clang+gc 0.4.11
rust 2.rs 301ms 2.9ms 6.6MB 290ms 0ms rustc 1.88.0
crystal 2.cr 301ms 3.1ms 8.3MB 290ms 0ms crystal 1.17.0
v 1.v 301ms 3.8ms 40.3MB 287ms 0ms v/clang 0.4.11
d 1.d 303ms 7.2ms 43.5MB 287ms 0ms ldc2 1.41.0
csharp 1.cs 304ms 2.9ms 78.8MB 283ms 7ms dotnet/aot 9.0.303
rust 1.rs 305ms 4.3ms 40.9MB 287ms 3ms rustc 1.88.0
go 1.go 310ms 6.6ms 71.7MB 297ms 0ms go 1.24.5
go 1.go 312ms 4.6ms 39.4MB 300ms 0ms tinygo 0.38.0
nim 1.nim 316ms 6.2ms 41.8MB 307ms 0ms nim/clang 2.2.4
zig 2.zig 328ms 0.3ms 6.0MB 320ms 0ms zig 0.14.1
v 2.v 332ms 2.5ms 6.1MB 323ms 0ms v/clang 0.4.11
v 2.v 333ms 5.6ms 6.9MB 323ms 0ms v/clang+gc 0.4.11
csharp 1.cs 335ms 11ms 96.1MB 310ms 17ms dotnet 9.0.303
d 1.d 345ms 5.5ms 79.3MB 327ms 3ms dmd 2.111.0
wasm 2.rs 385ms 7.3ms 22.7MB 370ms 0ms wasmtime 35.0.0
java 1.java 387ms 7.8ms 118.0MB 423ms 27ms openjdk 23
java 1.java 394ms 5.7ms 115.1MB 443ms 27ms openjdk 21
csharp 2.cs 395ms 5.1ms 35.8MB 370ms 10ms dotnet 9.0.303
codon 1-m.py 407ms 5.7ms 48.3MB 717ms 0ms codon 0.19.1
crystal 1.cr 420ms 4.6ms 43.0MB 403ms 0ms crystal 1.17.0
csharp 2.cs 425ms 3.3ms 17.5MB 410ms 0ms dotnet/aot 9.0.303
wasm 1.rs 450ms 3.8ms 56.9MB 437ms 0ms wasmtime 35.0.0
go 2.go 470ms 3.8ms 20.0MB 460ms 0ms tinygo 0.38.0
cpp 1.cpp 485ms 0.9ms 7.3MB 470ms 0ms g++ 11.4.0
cpp 1.cpp 531ms 2.8ms 7.8MB 520ms 0ms clang++ 14.0.0-1ubuntu1.1
csharp 1.cs 535ms 4.1ms 84.0MB 517ms 7ms mono 6.12.0
java 1.java 562ms 3.9ms 112.6MB 470ms 167ms openjdk/zgc 21
java 1-m.java 600ms 11ms 206.8MB 877ms 60ms graal/jvm 17.0.8
odin 2.odin 706ms 32ms 6.5MB 697ms 0ms odin 2024
java 2.java 775ms 5.6ms 57.1MB 827ms 23ms openjdk 21
java 2.java 783ms 4.2ms 60.4MB 833ms 17ms openjdk 23
go 2.go 787ms 2.0ms 21.8MB 777ms 10ms go 1.24.5
java 2.java 839ms 5.9ms 53.4MB 773ms 137ms openjdk/zgc 21
d 2.d 846ms 5.3ms 47.7MB 827ms 7ms ldc2 1.41.0
codon 2.py 896ms 5.4ms 100.8MB 1197ms 23ms codon 0.19.1
ocaml 1.ml 932ms 21ms 543.2MB 877ms 43ms ocaml 5.3.0
d 2.d 1170ms 7.1ms 51.6MB 1150ms 7ms dmd 2.111.0
java 2-m.java 1323ms 9.8ms 232.4MB 2367ms 107ms graal/jvm 17.0.8
csharp 2.cs 1862ms 5.9ms 27.5MB 1843ms 3ms mono 6.12.0
ocaml 2.ml 1887ms 12ms 19.0MB 1873ms 0ms ocaml 5.3.0
python 1.py 2403ms 56ms 369.9MB 2330ms 57ms pypy 3.11.13
python 2.py 2979ms 17ms 633.0MB 2793ms 170ms pyston 3.8.12
python 1.py 4806ms 156ms 320.4MB 4743ms 47ms pyston 3.8.12
acton 1.act timeout 0.0ms 560.8MB 6650ms 90ms actonc 0.26.0
python 1.py timeout 0.0ms 321.4MB 4960ms 20ms cpython 3.13.5
python 2.py timeout 0.0ms 633.8MB 4827ms 160ms cpython 3.13.5
python 2.py timeout 0.0ms 1017.7MB 4707ms 280ms pypy 3.11.13
ruby 1.rb timeout 0.0ms 325.3MB 4840ms 140ms ruby 3.4.5
ruby 1.rb timeout 0.0ms 327.0MB 4847ms 140ms ruby/yjit 3.4.5
ruby 1.rb timeout 0.0ms 737.6MB 5057ms 157ms truffleruby 24.2.2

Input: 10

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
nim 1.nim 52ms 3.2ms 12.8MB 43ms 0ms nim 2.2.4
c 1.c 54ms 5.0ms 11.6MB 43ms 0ms gcc 15.1.0
c 1.c 55ms 3.1ms 11.7MB 43ms 0ms clang 14.0.0-1ubuntu1.1
zig 1.zig 55ms 1.6ms 10.9MB 43ms 0ms zig 0.14.1
odin 1.odin 56ms 3.6ms 11.3MB 47ms 0ms odin 2024
c 1.c 59ms 2.4ms 11.0MB 50ms 0ms zigcc 0.14.1
v 1.v 61ms 2.3ms 19.0MB 50ms 0ms v/clang+gc 0.4.11
v 1.v 62ms 1.5ms 11.0MB 50ms 0ms v/clang 0.4.11
go 1.go 63ms 1.9ms 21.6MB 57ms 0ms go 1.24.5
d 1.d 64ms 2.7ms 15.7MB 53ms 0ms ldc2 1.41.0
rust 1.rs 64ms 1.9ms 11.6MB 57ms 0ms rustc 1.88.0
nim 1.nim 66ms 3.5ms 11.8MB 57ms 0ms nim/clang 2.2.4
csharp 1.cs 66ms 2.7ms 24.9MB 50ms 0ms dotnet/aot 9.0.303
go 1.go 67ms 2.7ms 10.1MB 60ms 0ms tinygo 0.38.0
crystal 2.cr 74ms 0.2ms 4.5MB 70ms 0ms crystal 1.17.0
d 1.d 75ms 1.7ms 25.5MB 67ms 0ms dmd 2.111.0
rust 2.rs 77ms 1.1ms 2.9MB 70ms 0ms rustc 1.88.0
zig 2.zig 81ms 1.3ms 2.3MB 70ms 0ms zig 0.14.1
v 2.v 82ms 1.6ms 2.4MB 70ms 0ms v/clang 0.4.11
v 2.v 83ms 1.9ms 3.1MB 73ms 0ms v/clang+gc 0.4.11
crystal 1.cr 89ms 0.6ms 13.2MB 80ms 0ms crystal 1.17.0
wasm 1.rs 92ms 1.1ms 27.5MB 80ms 0ms wasmtime 35.0.0
csharp 1.cs 98ms 1.4ms 42.5MB 80ms 10ms dotnet 9.0.303
wasm 2.rs 99ms 0.8ms 19.1MB 90ms 0ms wasmtime 35.0.0
csharp 2.cs 108ms 1.0ms 11.8MB 97ms 0ms dotnet/aot 9.0.303
codon 1-m.py 119ms 3.0ms 19.3MB 427ms 0ms codon 0.19.1
go 2.go 119ms 3.3ms 4.1MB 110ms 0ms tinygo 0.38.0
cpp 1.cpp 121ms 1.9ms 3.6MB 110ms 0ms g++ 11.4.0
csharp 2.cs 131ms 1.6ms 30.0MB 110ms 10ms dotnet 9.0.303
cpp 1.cpp 131ms 1.3ms 4.1MB 120ms 0ms clang++ 14.0.0-1ubuntu1.1
csharp 1.cs 142ms 0.4ms 38.0MB 127ms 0ms mono 6.12.0
java 1.java 151ms 1.0ms 68.0MB 197ms 20ms openjdk 23
java 1.java 152ms 7.0ms 64.9MB 203ms 13ms openjdk 21
ocaml 1.ml 175ms 1.5ms 142.1MB 150ms 10ms ocaml 5.3.0
odin 2.odin 179ms 9.9ms 2.8MB 170ms 0ms odin 2024
go 2.go 194ms 4.5ms 7.1MB 183ms 0ms go 1.24.5
java 1-m.java 195ms 2.0ms 123.9MB 273ms 37ms graal/jvm 17.0.8
d 2.d 210ms 2.0ms 17.7MB 200ms 0ms ldc2 1.41.0
codon 2-m.py 229ms 1.6ms 27.6MB 537ms 7ms codon 0.19.1
java 2.java 259ms 2.0ms 50.4MB 310ms 20ms openjdk 23
java 2.java 259ms 2.3ms 50.0MB 323ms 13ms openjdk 21
java 1.java 285ms 7.4ms 61.4MB 207ms 150ms openjdk/zgc 21
d 2.d 295ms 1.1ms 19.7MB 280ms 0ms dmd 2.111.0
java 2.java 366ms 2.5ms 47.6MB 303ms 140ms openjdk/zgc 21
ocaml 2.ml 469ms 6.0ms 9.1MB 457ms 0ms ocaml 5.3.0
java 2-m.java 471ms 0.4ms 190.4MB 827ms 67ms graal/jvm 17.0.8
csharp 2.cs 480ms 1.2ms 23.0MB 470ms 0ms mono 6.12.0
python 1.py 503ms 12ms 135.7MB 463ms 23ms pypy 3.11.13
python 2.py 726ms 6.1ms 164.2MB 683ms 30ms pyston 3.8.12
python 1.py 1068ms 11ms 86.0MB 1040ms 10ms pyston 3.8.12
python 2.py 1370ms 7.2ms 165.1MB 1327ms 30ms cpython 3.13.5
python 2.py 1392ms 15ms 290.8MB 1303ms 73ms pypy 3.11.13
ruby 1-m.rb 1694ms 36ms 474.9MB 2407ms 170ms truffleruby 24.2.2
acton 1.act 2393ms 5.2ms 192.5MB 2880ms 50ms actonc 0.26.0
python 1.py 2819ms 6.7ms 87.0MB 2793ms 10ms cpython 3.13.5
ruby 1.rb 3393ms 45ms 131.6MB 3303ms 70ms ruby/yjit 3.4.5
ruby 1.rb 4458ms 22ms 131.0MB 4367ms 77ms ruby 3.4.5