All nsieve problem benchmarks

Current benchmark data was generated on Fri Dec 09 2022, full log can be found HERE

CONTRIBUTIONS are WELCOME!

[x86_64][2 cores] Intel(R) Xeon(R) Platinum 8272CL CPU @ 2.60GHz (Model 85)

* -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 2.zig 372ms 1.4ms 6.1MB 360ms 0ms zig 0.11.0-dev.632+d69e97ae1
julia 1.jl 429ms 2.3ms 158.0MB 380ms 140ms julia/aot 1.8.3
crystal 2.cr 432ms 1.5ms 7.9MB 417ms 0ms crystal 1.6.2
rust 2.rs 439ms 1.8ms 6.5MB 427ms 0ms rustc 1.65.0
v 2.v 484ms 3.8ms 10.9MB 470ms 0ms v/clang 0.3.2
v 2.v 486ms 3.4ms 10.6MB 467ms 0ms v/clang+gc 0.3.2
julia 1.jl 538ms 0.9ms 202.9MB 473ms 147ms julia 1.8.3
cpp 1.cpp 641ms 3.7ms 7.8MB 627ms 0ms g++ 12.2.0
csharp 2.cs 652ms 1.6ms 21.7MB 640ms 7ms dotnet/aot 7.0.100
nim 2.nim 664ms 0.5ms 6.3MB 650ms 0ms nim/clang 1.6.10
cpp 1.cpp 671ms 0.7ms 7.5MB 660ms 0ms clang++ 14.0.0
go 2.go 679ms 1.5ms 17.4MB 667ms 0ms tinygo 0.25.0
wasm 2.rs 683ms 1.5ms 20.8MB 670ms 0ms wasmedgec 0.11.2
v 1.v 739ms 7.4ms 41.2MB 713ms 3ms v/clang+gc 0.3.2
v 1.v 740ms 14ms 41.2MB 717ms 7ms v/clang 0.3.2
zig 1.zig 753ms 11ms 40.2MB 730ms 7ms zig 0.11.0-dev.632+d69e97ae1
wasm 2.rs 768ms 0.5ms 48.7MB 773ms 10ms node 16.18.1
csharp 2.cs 774ms 2.0ms 113.1MB 713ms 37ms dotnet 7.0.100
d 1.d 784ms 6.5ms 42.4MB 757ms 10ms ldc2 1.30.0
odin 1.odin 785ms 5.4ms 40.6MB 763ms 10ms odin 2022
go 1.go 797ms 13ms 73.9MB 760ms 23ms go 1.19.4
wasm 1.rs 805ms 7.5ms 54.7MB 780ms 7ms wasmedgec 0.11.2
c 1.c 817ms 11ms 41.0MB 790ms 17ms gcc 12.2.0
nim 1.nim 821ms 18ms 40.8MB 800ms 3ms nim/clang 1.6.10
c 1.c 821ms 3.0ms 40.3MB 797ms 10ms zigcc 0.11.0-dev.632+d69e97ae1
rust 1.rs 822ms 39ms 40.9MB 797ms 10ms rustc 1.65.0
nim 2.nim 830ms 0.7ms 6.0MB 820ms 0ms nim 1.6.10
csharp 1.cs 832ms 15ms 71.8MB 807ms 17ms dotnet/aot 7.0.100
d 2.d 833ms 0.2ms 48.4MB 800ms 13ms ldc2 1.30.0
nim 1.nim 833ms 4.9ms 40.7MB 813ms 3ms nim 1.6.10
c 1.c 840ms 31ms 40.8MB 803ms 20ms clang 14.0.0
crystal 1.cr 898ms 16ms 42.2MB 877ms 0ms crystal 1.6.2
d 1.d 901ms 21ms 74.9MB 867ms 17ms dmd 2.101.0
go 2.go 929ms 2.1ms 20.0MB 917ms 3ms go 1.19.4
java 1.java 935ms 11ms 84.4MB 957ms 23ms openjdk 19
java 1.java 966ms 3.9ms 84.0MB 990ms 20ms openjdk 20
wasm 1.rs 983ms 24ms 83.2MB 977ms 23ms node 16.18.1
go 1.go 1010ms 43ms 42.9MB 987ms 7ms tinygo 0.25.0
java 2.java 1021ms 3.8ms 50.9MB 1053ms 17ms openjdk 20
odin 2.odin 1038ms 1.5ms 6.5MB 1027ms 0ms odin 2022
wasm 2.rs 1040ms 1.7ms 15.3MB 1027ms 0ms wasmtime 3.0.1
csharp 1.cs 1044ms 19ms 88.6MB 1013ms 17ms mono 6.12.0
java 2.java 1054ms 9.1ms 54.1MB 1073ms 17ms openjdk 19
java 2.java 1120ms 3.8ms 52.4MB 1097ms 67ms openjdk/zgc 19
wasm 1.rs 1177ms 4.8ms 49.6MB 1150ms 10ms wasmtime 3.0.1
java 1.java 1215ms 23ms 112.0MB 1157ms 100ms openjdk/zgc 19
java 1.java 1392ms 13ms 239.0MB 1927ms 103ms graal/jvm 17.0.5
csharp 1.cs 1497ms 123ms 158.9MB 1420ms 50ms dotnet 7.0.100
d 2.d 1538ms 0.8ms 49.0MB 1500ms 20ms dmd 2.101.0
java 2-m.java 1928ms 136ms 237.6MB 3393ms 107ms graal/jvm 17.0.5
ocaml 1.ml 2484ms 11ms 555.7MB 2323ms 143ms ocaml 4.14.0
ocaml 2.ml 2554ms 25ms 20.2MB 2537ms 3ms ocaml 4.14.0
csharp 2.cs 2764ms 5.3ms 32.2MB 2747ms 0ms mono 6.12.0
python 1.py 4853ms 9.3ms 382.9MB 4680ms 157ms pypy 3.9.15
python 1.py timeout 0.0ms 0.0MB 0ms 0ms cpython 3.11.1
python 2.py timeout 0.0ms 0.0MB 0ms 0ms cpython 3.11.1
python 2.py timeout 0.0ms 0.0MB 0ms 0ms pypy 3.9.15
python 1.py timeout 0.0ms 0.0MB 0ms 0ms pyston 3.8.12
python 2.py timeout 0.0ms 0.0MB 0ms 0ms pyston 3.8.12
ruby 1.rb timeout 0.0ms 0.0MB 0ms 0ms ruby 3.1.3
ruby 1.rb timeout 0.0ms 0.0MB 0ms 0ms ruby/yjit 3.1.3
ruby 1.rb timeout 0.0ms 0.0MB 0ms 0ms truffleruby 22.3.0

Input: 10

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
zig 2.zig 79ms 0.3ms 2.2MB 70ms 0ms zig 0.11.0-dev.632+d69e97ae1
crystal 2.cr 96ms 0.4ms 4.1MB 87ms 0ms crystal 1.6.2
rust 2.rs 98ms 0.7ms 3.1MB 87ms 0ms rustc 1.65.0
v 2.v 109ms 0.3ms 4.0MB 97ms 0ms v/clang 0.3.2
v 2.v 109ms 0.4ms 3.9MB 100ms 0ms v/clang+gc 0.3.2
c 1.c 111ms 1.8ms 11.6MB 97ms 0ms clang 14.0.0
v 1.v 113ms 0.8ms 20.4MB 97ms 3ms v/clang 0.3.2
zig 1.zig 113ms 1.5ms 11.0MB 100ms 0ms zig 0.11.0-dev.632+d69e97ae1
v 1.v 115ms 2.3ms 20.4MB 100ms 0ms v/clang+gc 0.3.2
c 1.c 119ms 0.8ms 11.6MB 103ms 0ms gcc 12.2.0
d 1.d 121ms 0.7ms 13.9MB 103ms 3ms ldc2 1.30.0
c 1.c 122ms 2.7ms 10.9MB 110ms 0ms zigcc 0.11.0-dev.632+d69e97ae1
odin 1.odin 123ms 2.0ms 11.4MB 110ms 0ms odin 2022
rust 1.rs 129ms 4.5ms 11.5MB 117ms 0ms rustc 1.65.0
nim 1.nim 130ms 1.2ms 11.1MB 120ms 0ms nim 1.6.10
nim 1.nim 130ms 0.9ms 11.6MB 120ms 0ms nim/clang 1.6.10
go 1.go 132ms 4.5ms 24.2MB 117ms 0ms go 1.19.4
go 1.go 134ms 7.1ms 13.1MB 123ms 0ms tinygo 0.25.0
wasm 1.rs 138ms 1.1ms 26.2MB 127ms 0ms wasmedgec 0.11.2
d 1.d 142ms 1.5ms 22.7MB 123ms 0ms dmd 2.101.0
csharp 1.cs 142ms 1.9ms 27.8MB 133ms 7ms dotnet/aot 7.0.100
cpp 1.cpp 147ms 0.4ms 4.1MB 137ms 0ms g++ 12.2.0
crystal 1.cr 148ms 1.0ms 12.8MB 137ms 0ms crystal 1.6.2
nim 2.nim 151ms 0.7ms 3.3MB 140ms 0ms nim/clang 1.6.10
cpp 1.cpp 152ms 0.3ms 4.0MB 140ms 0ms clang++ 14.0.0
csharp 2.cs 155ms 3.5ms 15.3MB 147ms 3ms dotnet/aot 7.0.100
go 2.go 162ms 2.3ms 5.6MB 150ms 0ms tinygo 0.25.0
wasm 2.rs 163ms 0.2ms 17.5MB 153ms 0ms wasmedgec 0.11.2
csharp 1.cs 192ms 0.1ms 40.6MB 177ms 3ms mono 6.12.0
d 2.d 195ms 1.6ms 15.1MB 180ms 0ms ldc2 1.30.0
nim 2.nim 196ms 0.1ms 3.1MB 183ms 0ms nim 1.6.10
go 2.go 216ms 1.2ms 7.3MB 200ms 0ms go 1.19.4
wasm 1.rs 238ms 6.6ms 54.0MB 240ms 7ms node 16.18.1
csharp 2.cs 239ms 2.1ms 102.4MB 183ms 30ms dotnet 7.0.100
julia 1.jl 242ms 17ms 148.2MB 173ms 103ms julia/aot 1.8.3
wasm 2.rs 243ms 2.1ms 45.0MB 243ms 13ms node 16.18.1
java 1.java 245ms 1.5ms 58.0MB 263ms 20ms openjdk 20
wasm 1.rs 251ms 1.2ms 20.2MB 233ms 0ms wasmtime 3.0.1
wasm 2.rs 251ms 0.8ms 11.8MB 233ms 0ms wasmtime 3.0.1
odin 2.odin 252ms 0.3ms 2.8MB 240ms 0ms odin 2022
java 1.java 252ms 0.2ms 60.1MB 270ms 20ms openjdk 19
java 1.java 311ms 6.4ms 60.7MB 257ms 87ms openjdk/zgc 19
java 2.java 320ms 1.9ms 44.2MB 353ms 7ms openjdk 20
csharp 1.cs 330ms 12ms 116.7MB 267ms 33ms dotnet 7.0.100
java 2.java 333ms 4.5ms 47.9MB 347ms 20ms openjdk 19
julia 1.jl 344ms 2.5ms 196.9MB 293ms 137ms julia 1.8.3
java 1-m.java 345ms 6.0ms 150.7MB 470ms 50ms graal/jvm 17.0.5
d 2.d 381ms 1.1ms 16.4MB 367ms 0ms dmd 2.101.0
java 2.java 388ms 3.2ms 45.7MB 363ms 63ms openjdk/zgc 19
ocaml 1.ml 465ms 7.9ms 142.4MB 417ms 27ms ocaml 4.14.0
ocaml 2.ml 605ms 1.1ms 9.1MB 590ms 0ms ocaml 4.14.0
csharp 2.cs 673ms 1.6ms 25.7MB 660ms 0ms mono 6.12.0
java 2-m.java 678ms 4.9ms 152.9MB 1190ms 63ms graal/jvm 17.0.5
python 1.py 1064ms 19ms 207.0MB 990ms 57ms pypy 3.9.15
python 2.py 1144ms 11ms 164.4MB 1053ms 73ms pyston 3.8.12
python 2.py 1677ms 23ms 164.7MB 1587ms 70ms cpython 3.11.1
python 2.py 1844ms 9.4ms 210.2MB 1697ms 130ms pypy 3.9.15
python 1.py 2042ms 2.5ms 86.0MB 1997ms 27ms pyston 3.8.12
ruby 1.rb 3230ms 44ms 420.3MB 3753ms 147ms truffleruby 22.3.0
python 1.py 3574ms 32ms 86.8MB 3527ms 30ms cpython 3.11.1
ruby 1.rb timeout 0.0ms 0.0MB 0ms 0ms ruby 3.1.3
ruby 1.rb timeout 0.0ms 0.0MB 0ms 0ms ruby/yjit 3.1.3