All pidigits problem benchmarks

Current benchmark data was generated on Wed Mar 22 2023, full log can be found HERE


[x86_64][2 cores] Intel(R) Xeon(R) Platinum 8370C CPU @ 2.80GHz (Model 106)

* -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.)


Input: 8000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
chapel 2.chpl 595ms 1.9ms 32.0MB 580ms 3ms chpl 1.29.0
julia 3.jl 795ms 1.7ms 173.5MB 763ms 110ms julia 1.8.5
go 8.go 1418ms 9.0ms 10.6MB 1400ms 3ms go 1.20.2
julia 1.jl 1508ms 9.3ms 262.6MB 1417ms 170ms julia 1.8.5
dart 2.dart 1714ms 3.8ms 22.2MB 1647ms 40ms dart/exe 2.19.5
rust 1746ms 1.0ms 2.6MB 1693ms 37ms rustc 1.68.0
dart 2.dart 1797ms 13ms 20.2MB 1753ms 23ms dart/exe
rust 1823ms 2.4ms 2.7MB 1647ms 157ms rustc 1.68.0
zig 1.zig 2311ms 2.5ms 2.3MB 2283ms 10ms zig 0.11.0-dev.2227+f9b582950
crystal 2654ms 116ms 7.5MB 2623ms 17ms crystal 1.7.3
wasm 2768ms 5.8ms 17.5MB 2753ms 0ms wasmedgec 0.11.2
python 2781ms 1.0ms 9.1MB 2743ms 23ms pyston 3.8.12
python 2784ms 1.0ms 9.4MB 2743ms 23ms cpython 3.11.2
python 2854ms 4.7ms 117.5MB 2800ms 37ms pypy 3.9.16
wasm 3103ms 0.4ms 13.2MB 3090ms 0ms wasmtime 7.0.0
wasm 3334ms 1.7ms 54.2MB 3337ms 17ms node 18.15.0
d 1.d 3432ms 5.5ms 8.0MB 3420ms 7ms ldc2 1.31.0
v 1.v 3901ms 103ms 3.0MB 3877ms 10ms v/clang+gc 0.3.3
acton 1.act 4313ms 37ms 7.9MB 3970ms 700ms actonc 0.14.2
csharp 1.cs 4619ms 5.6ms 76.5MB 4583ms 40ms dotnet/aot 7.0.202
csharp 1.cs 4727ms 58ms 100.9MB 4663ms 100ms dotnet 7.0.202
d 1.d timeout 0.0ms 9.7MB 4980ms 10ms dmd 2.102.2
java timeout 0.0ms 336.1MB 5410ms 97ms graal/jvm 17.0.6
java timeout 0.0ms 274.7MB 5430ms 77ms openjdk 19
java timeout 0.0ms 265.0MB 5597ms 80ms openjdk 21
java timeout 0.0ms 1251.4MB 5050ms 640ms openjdk/zgc 19
javascript 3.js timeout 0.0ms 79.1MB 4977ms 27ms node 19.8.1
kotlin 1.kt timeout 0.0ms 212.1MB 5393ms 80ms kotlin/jvm 17.0.2
kotlin 1n.kt timeout 0.0ms 10.9MB 6323ms 180ms kotlin/native 1.8.10
kotlin 2n.kt timeout 0.0ms 9.2MB 5020ms 123ms kotlin/native 1.8.10
nim 1.nim timeout 0.0ms 6.1MB 4983ms 0ms nim/clang 1.6.12
nim 1.nim timeout 0.0ms 5.8MB 4987ms 0ms nim 1.6.12
ruby 1.rb timeout 0.0ms 159.2MB 4923ms 60ms ruby 3.2.1
ruby 1.rb timeout 0.0ms 159.2MB 4933ms 47ms ruby/yjit 3.2.1
ruby 1.rb timeout 0.0ms 430.7MB 9390ms 237ms truffleruby 22.3.1
swift 1.swift timeout 0.0ms 6.7MB 4957ms 17ms swift 5.7.3
typescript 3.ts timeout 0.0ms 86.5MB 4960ms 27ms deno 1.31.3
v 2.v timeout 0.0ms 3.1MB 4977ms 3ms v/clang+gc 0.3.3
v 1.v timeout 0.0ms 4.0MB 4983ms 0ms v/clang 0.3.3

Input: 4000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
chapel 2.chpl 156ms 3.0ms 34.0MB 143ms 3ms chpl 1.29.0
go 8.go 343ms 5.2ms 8.5MB 323ms 0ms go 1.20.2
julia 3.jl 355ms 5.7ms 175.8MB 303ms 127ms julia 1.8.5
rust 386ms 0.3ms 2.5MB 367ms 3ms rustc 1.68.0
rust 389ms 0.3ms 2.6MB 377ms 0ms rustc 1.68.0
dart 2.dart 430ms 3.0ms 22.3MB 393ms 17ms dart/exe 2.19.5
dart 2.dart 437ms 2.5ms 20.5MB 400ms 20ms dart/exe
zig 1.zig 518ms 0.2ms 1.9MB 507ms 0ms zig 0.11.0-dev.2227+f9b582950
crystal 592ms 21ms 5.9MB 573ms 3ms crystal 1.7.3
wasm 652ms 2.7ms 16.0MB 643ms 0ms wasmedgec 0.11.2
python 659ms 2.7ms 8.8MB 643ms 0ms pyston 3.8.12
python 660ms 1.0ms 9.1MB 647ms 0ms cpython 3.11.2
python 704ms 4.0ms 81.6MB 677ms 10ms pypy 3.9.16
wasm 729ms 0.6ms 12.8MB 713ms 0ms wasmtime 7.0.0
d 1.d 815ms 1.1ms 8.0MB 797ms 3ms ldc2 1.31.0
wasm 831ms 2.1ms 54.1MB 827ms 20ms node 18.15.0
julia 1.jl 849ms 34ms 260.6MB 737ms 167ms julia 1.8.5
v 1.v 954ms 13ms 2.8MB 943ms 0ms v/clang+gc 0.3.3
csharp 1.cs 1098ms 3.1ms 75.8MB 1073ms 23ms dotnet/aot 7.0.202
csharp 1.cs 1181ms 2.6ms 95.0MB 1173ms 37ms dotnet 7.0.202
java 1360ms 3.6ms 311.3MB 1723ms 87ms graal/jvm 17.0.6
acton 1.act 1394ms 250ms 6.8MB 1220ms 253ms actonc 0.14.2
v 1.v 1413ms 32ms 3.0MB 1397ms 0ms v/clang 0.3.3
java 1449ms 27ms 294.4MB 1920ms 90ms openjdk 21
java 1457ms 25ms 298.2MB 1780ms 80ms openjdk 19
kotlin 1.kt 1502ms 21ms 244.4MB 1873ms 67ms kotlin/jvm 17.0.2
typescript 3.ts 1584ms 6.0ms 66.2MB 1537ms 60ms deno 1.31.3
javascript 3.js 1595ms 0.9ms 63.3MB 1580ms 20ms node 19.8.1
d 1.d 1676ms 4.1ms 9.6MB 1663ms 3ms dmd 2.102.2
v 2.v 1703ms 13ms 2.9MB 1690ms 0ms v/clang+gc 0.3.3
ruby 1-m.rb 2017ms 42ms 427.3MB 3650ms 183ms truffleruby 22.3.1
java 2028ms 3.0ms 928.4MB 2093ms 630ms openjdk/zgc 19
ruby 1.rb 2432ms 3.0ms 161.2MB 2357ms 60ms ruby/yjit 3.2.1
ruby 1.rb 2447ms 4.7ms 159.1MB 2357ms 67ms ruby 3.2.1
swift 1.swift 2570ms 3.9ms 6.3MB 2553ms 3ms swift 5.7.3
kotlin 1n.kt timeout 0.0ms 20.9MB 6337ms 140ms kotlin/native 1.8.10
kotlin 2n.kt timeout 0.0ms 11.3MB 5017ms 127ms kotlin/native 1.8.10
nim 1.nim timeout 0.0ms 6.1MB 4983ms 0ms nim/clang 1.6.12
nim 1.nim timeout 0.0ms 5.8MB 4987ms 0ms nim 1.6.12