All edigits problem benchmarks

Current benchmark data was generated on Thu Feb 01 2024, 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.)

edigits

Input: 250001

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
crystal 1.cr 60ms 1.4ms 7.0MB 40ms 7ms crystal 1.11.2
chapel 1.chpl 79ms 0.6ms 36.5MB 70ms 0ms chpl 1.31.0
go 1.go 119ms 0.4ms 10.2MB 110ms 0ms go 1.21.6
rust 1.rs 123ms 2.1ms 3.6MB 113ms 0ms rustc 1.75.0
python 1.py 257ms 4.7ms 63.0MB 223ms 17ms pypy 3.10.13
javascript 1.js 292ms 3.6ms 58.3MB 310ms 27ms node 21.6.1
python 1.py 355ms 7.3ms 13.0MB 333ms 7ms cpython 3.12.1
rust 2.rs 438ms 3.0ms 3.6MB 427ms 0ms rustc 1.75.0
javascript 1.js 445ms 1.2ms 107.5MB 427ms 13ms bun 1.0.25
wasm 1.rs 469ms 42ms 20.3MB 453ms 0ms wasmtime 17.0.0
wasm 1.rs 481ms 2.2ms 58.4MB 543ms 17ms node 18.19.0
acton 1.act 518ms 8.0ms 12.4MB 543ms 47ms actonc 0.19.2
java 1-m.java 652ms 40ms 265.4MB 1723ms 73ms openjdk 23
java 1-m.java 673ms 9.3ms 264.3MB 1770ms 67ms openjdk 21
java 1-m.java 695ms 70ms 353.3MB 1313ms 137ms graal/jvm 17.0.8
java 1-m.java 969ms 31ms 521.1MB 1597ms 453ms openjdk/zgc 21
python 1.py 1998ms 10ms 9.6MB 1980ms 3ms pyston 3.8.12
zig 1.zig 2265ms 7.1ms 2.5MB 2237ms 13ms zig 0.12.0-dev.2341+92211135f
d 1.d 2528ms 1.4ms 8.0MB 2513ms 3ms ldc2 1.36.0
d 1.d 2873ms 6.8ms 10.0MB 2863ms 3ms dmd 2.106.1
dart 1.dart 3677ms 17ms 17.4MB 3640ms 33ms dart/exe 3.2.6
csharp 1.cs 4390ms 10ms 24.9MB 4380ms 7ms dotnet/aot 8.0.101
csharp 1.cs 4615ms 25ms 49.5MB 4570ms 33ms dotnet 8.0.101
v 1.v timeout 0.0ms 30.0MB 4980ms 7ms v/clang+gc 0.4.4

Input: 100000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
crystal 1.cr 23ms 1.1ms 5.6MB 10ms 3ms crystal 1.11.2
rust 1.rs 33ms 0.2ms 2.9MB 23ms 0ms rustc 1.75.0
go 1.go 35ms 1.4ms 8.3MB 27ms 0ms go 1.21.6
chapel 1.chpl 40ms 0.2ms 34.5MB 30ms 0ms chpl 1.31.0
rust 2.rs 82ms 1.0ms 3.1MB 70ms 0ms rustc 1.75.0
python 1.py 105ms 3.0ms 61.5MB 77ms 17ms pypy 3.10.13
wasm 1.rs 120ms 0.3ms 19.6MB 103ms 0ms wasmtime 17.0.0
python 1.py 132ms 49ms 12.0MB 93ms 0ms cpython 3.12.1
javascript 1.js 141ms 2.5ms 54.1MB 167ms 13ms node 21.6.1
acton 1.act 167ms 8.8ms 10.8MB 153ms 30ms actonc 0.19.2
wasm 1.rs 176ms 0.9ms 58.2MB 223ms 23ms node 18.19.0
java 1-m.java 320ms 17ms 241.0MB 623ms 73ms graal/jvm 17.0.8
python 1.py 347ms 2.1ms 8.8MB 330ms 0ms pyston 3.8.12
javascript 1.js 357ms 27ms 97.4MB 340ms 13ms bun 1.0.25
java 1-m.java 360ms 30ms 179.2MB 963ms 63ms openjdk 21
java 1-m.java 372ms 19ms 173.4MB 1023ms 43ms openjdk 23
zig 1.zig 381ms 1.2ms 1.9MB 367ms 0ms zig 0.12.0-dev.2341+92211135f
d 1.d 438ms 1.2ms 8.1MB 427ms 0ms ldc2 1.36.0
java 1-m.java 513ms 31ms 215.7MB 987ms 223ms openjdk/zgc 21
d 1.d 523ms 0.9ms 10.0MB 520ms 0ms dmd 2.106.1
dart 1.dart 593ms 7.3ms 9.9MB 570ms 7ms dart/exe 3.2.6
csharp 1.cs 738ms 1.4ms 21.0MB 730ms 3ms dotnet/aot 8.0.101
csharp 1.cs 848ms 3.6ms 40.1MB 807ms 10ms dotnet 8.0.101
v 1.v timeout 0.0ms 13.3MB 4990ms 0ms v/clang+gc 0.4.4