All fannkuch-redux problem benchmarks

Current benchmark data was generated on Tue Dec 31 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.)

fannkuch-redux

Input: 11

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
d 1-im.d 366ms 4.6ms 6.9MB 1363ms 3ms ldc2 1.40.0
cpp 1-im.cpp 383ms 1.6ms 4.7MB 1463ms 0ms g++ 11.4.0
rust 3-im.rs 394ms 5.6ms 6.0MB 1513ms 0ms rustc 1.83.0
cpp 1-im.cpp 396ms 27ms 8.0MB 1473ms 3ms clang++ 14.0.0-1ubuntu1.1
rust 5-m.rs 538ms 7.1ms 4.0MB 2067ms 0ms rustc 1.83.0
rust 2-im.rs 597ms 11ms 4.0MB 2270ms 0ms rustc 1.83.0
zig 2-m.zig 614ms 3.4ms 3.6MB 2297ms 3ms zig 0.13.0
go 3-m.go 686ms 4.4ms 3.5MB 2637ms 3ms go 1.23.4
java 1-m.java 859ms 20ms 100.0MB 3133ms 30ms graal/jvm 17.0.8
java 1-m.java 901ms 28ms 48.5MB 3350ms 20ms openjdk 21
rust 1-m.rs 928ms 3.9ms 4.0MB 3580ms 3ms rustc 1.83.0
java 1-m.java 939ms 5.5ms 50.3MB 3437ms 33ms openjdk 23
java 1-m.java 1000ms 15ms 46.4MB 3263ms 133ms openjdk/zgc 21
d 2-im.d 1052ms 12ms 6.9MB 4073ms 0ms ldc2 1.40.0
d 1-i.d 1410ms 2.6ms 2.9MB 1400ms 0ms ldc2 1.40.0
rust 3-i.rs 1420ms 7.0ms 1.9MB 1410ms 0ms rustc 1.83.0
rust 2-i.rs 1659ms 11ms 1.8MB 1647ms 0ms rustc 1.83.0
zig 3-i.zig 1689ms 4.7ms 1.1MB 1680ms 0ms zig 0.13.0
v 1.v 2091ms 20ms 1.9MB 2083ms 0ms v/clang+gc 0.4.9
v 1.v 2107ms 8.2ms 1.4MB 2097ms 0ms v/clang 0.4.9
go 3.go 2155ms 14ms 50.1MB 2147ms 0ms tinygo 0.35.0
zig 2.zig 2336ms 14ms 1.1MB 2327ms 0ms zig 0.13.0
swift 1.swift 2350ms 22ms 5.6MB 2337ms 0ms swift 6.0.3
crystal 1.cr 2357ms 18ms 3.0MB 2343ms 0ms crystal 1.14.0
rust 1.rs 2517ms 13ms 1.8MB 2507ms 0ms rustc 1.83.0
dart 2.dart 2626ms 13ms 6.1MB 2617ms 0ms dart/exe 3.6.0
zig 1.zig 2710ms 6.9ms 1.1MB 2700ms 0ms zig 0.13.0
ocaml 2.ml 2795ms 29ms 4.9MB 2783ms 0ms ocaml 5.2.1
d 1.d 2946ms 29ms 2.9MB 2937ms 0ms ldc2 1.40.0
d 2-i.d 3069ms 14ms 2.9MB 3057ms 0ms ldc2 1.40.0
d 1.d 3337ms 28ms 4.5MB 3330ms 0ms dmd 2.109.1
d 1-im.d 4021ms 10ms 6.9MB 15707ms 7ms dmd 2.109.1
wasm 1.rs 4048ms 73ms 20.5MB 4037ms 0ms wasmtime 28.0.0
d 1-i.d timeout 0.0ms 4.5MB 4990ms 0ms dmd 2.109.1
d 2-i.d timeout 0.0ms 4.6MB 4990ms 0ms dmd 2.109.1
d 2-im.d timeout 0.0ms 8.8MB 19697ms 7ms dmd 2.109.1

Input: 10

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
rust 3-im.rs 38ms 1.2ms 4.0MB 120ms 0ms rustc 1.83.0
d 1-im.d 39ms 2.2ms 5.1MB 110ms 0ms ldc2 1.40.0
cpp 1-im.cpp 40ms 0.7ms 7.9MB 120ms 0ms clang++ 14.0.0-1ubuntu1.1
cpp 1-im.cpp 40ms 0.7ms 4.5MB 133ms 0ms g++ 11.4.0
rust 5-m.rs 53ms 1.3ms 6.0MB 160ms 0ms rustc 1.83.0
zig 2-m.zig 60ms 2.7ms 3.5MB 183ms 0ms zig 0.13.0
rust 2-im.rs 60ms 1.7ms 4.0MB 193ms 0ms rustc 1.83.0
go 3-m.go 73ms 1.5ms 3.5MB 193ms 0ms go 1.23.4
rust 1-m.rs 87ms 2.7ms 6.0MB 293ms 0ms rustc 1.83.0
d 2-im.d 96ms 2.8ms 4.9MB 330ms 0ms ldc2 1.40.0
d 1-i.d 118ms 3.0ms 2.8MB 110ms 0ms ldc2 1.40.0
rust 3-i.rs 121ms 4.1ms 1.9MB 113ms 0ms rustc 1.83.0
zig 3-i.zig 142ms 1.7ms 1.1MB 130ms 0ms zig 0.13.0
rust 2-i.rs 144ms 3.2ms 1.8MB 133ms 0ms rustc 1.83.0
java 1-m.java 175ms 16ms 48.3MB 470ms 17ms openjdk 21
v 1.v 177ms 2.1ms 1.9MB 167ms 0ms v/clang+gc 0.4.9
v 1.v 179ms 4.8ms 1.1MB 167ms 0ms v/clang 0.4.9
java 1-m.java 187ms 15ms 50.4MB 493ms 17ms openjdk 23
zig 2.zig 190ms 3.5ms 1.1MB 180ms 0ms zig 0.13.0
crystal 1.cr 195ms 0.7ms 3.0MB 190ms 0ms crystal 1.14.0
java 1-m.java 195ms 15ms 99.7MB 530ms 43ms graal/jvm 17.0.8
swift 1.swift 199ms 1.9ms 5.6MB 190ms 0ms swift 6.0.3
dart 2.dart 213ms 4.3ms 6.1MB 200ms 0ms dart/exe 3.6.0
rust 1.rs 218ms 6.6ms 1.8MB 207ms 0ms rustc 1.83.0
zig 1.zig 227ms 2.4ms 1.1MB 220ms 0ms zig 0.13.0
ocaml 2.ml 234ms 2.1ms 4.9MB 223ms 0ms ocaml 5.2.1
d 1.d 248ms 2.3ms 2.8MB 237ms 0ms ldc2 1.40.0
d 2-i.d 257ms 5.1ms 2.9MB 247ms 0ms ldc2 1.40.0
d 1.d 280ms 4.8ms 4.5MB 273ms 0ms dmd 2.109.1
java 1-m.java 282ms 16ms 47.5MB 453ms 127ms openjdk/zgc 21
wasm 1.rs 336ms 2.6ms 19.2MB 320ms 0ms wasmtime 28.0.0
d 1-im.d 336ms 2.0ms 6.9MB 1270ms 0ms dmd 2.109.1
go 3.go 459ms 3.7ms 48.8MB 447ms 0ms tinygo 0.35.0
d 2-im.d 502ms 2.9ms 6.9MB 1903ms 0ms dmd 2.109.1
d 1-i.d 823ms 13ms 4.5MB 813ms 0ms dmd 2.109.1
d 2-i.d 1343ms 11ms 4.5MB 1333ms 0ms dmd 2.109.1