All knucleotide problem benchmarks

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

knucleotide

Input: 2500000_in

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
c 1-m.c 171ms 2.8ms 23.5MB 400ms 10ms gcc 15.1.0
rust 8-m.rs 228ms 13ms 28.8MB 660ms 10ms rustc 1.86.0
c 1-m.c 299ms 5.2ms 25.7MB 1013ms 33ms clang 14.0.0-1ubuntu1.1
zig 1-m.zig 315ms 1.9ms 67.1MB 830ms 30ms zig 0.14.0
csharp 6-m.cs 456ms 12ms 46.2MB 1207ms 20ms dotnet/aot 9.0.203
rust 8.rs 479ms 15ms 24.4MB 460ms 3ms rustc 1.86.0
zig 1.zig 504ms 5.3ms 28.1MB 477ms 10ms zig 0.14.0
d 1-m.d 663ms 47ms 56.3MB 2020ms 10ms ldc2 1.40.1
go 7-m.go 674ms 2.1ms 41.7MB 2390ms 20ms go 1.24.2
csharp 6-m.cs 743ms 18ms 68.1MB 2037ms 30ms dotnet 9.0.203
chapel 3-m.chpl 751ms 2.2ms 85.0MB 1420ms 10ms chpl 1.31.0
csharp 6-m.cs 1019ms 22ms 66.8MB 2907ms 27ms mono 6.12.0
java 3-m.java 1028ms 58ms 124.8MB 3470ms 40ms openjdk 21
java 3-m.java 1058ms 56ms 156.9MB 3590ms 60ms openjdk 23
java 3-m.java 1110ms 8.8ms 177.4MB 3807ms 67ms graal/jvm 17.0.8
dart 3-m.dart 1121ms 16ms 275.8MB 3323ms 120ms dart/exe 3.7.3
swift 2-m.swift 1342ms 9.5ms 74.3MB 4893ms 33ms swift 6.1.0
java 3-m.java 1442ms 56ms 178.8MB 4513ms 213ms openjdk/zgc 21
d 1-m.d 1909ms 21ms 50.0MB 5543ms 10ms dmd 2.111.0
python 3-m.py 2338ms 1.4ms 136.4MB 7957ms 330ms pypy 3.10.16
python 3-m.py 3049ms 13ms 34.1MB 11583ms 117ms pyston 3.8.12
python 3.py timeout 0.0ms 35.9MB 90ms 20ms cpython 3.13.3

Input: 250000_in

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
c 1-m.c 27ms 0.7ms 13.6MB 60ms 0ms gcc 15.1.0
rust 8-m.rs 29ms 2.0ms 16.7MB 63ms 3ms rustc 1.86.0
c 1-m.c 37ms 0.6ms 14.9MB 103ms 3ms clang 14.0.0-1ubuntu1.1
rust 8.rs 61ms 1.2ms 11.4MB 50ms 0ms rustc 1.86.0
zig 1-m.zig 64ms 1.1ms 54.4MB 133ms 27ms zig 0.14.0
zig 1.zig 66ms 1.8ms 15.4MB 50ms 0ms zig 0.14.0
d 1-m.d 83ms 2.5ms 37.4MB 237ms 13ms ldc2 1.40.1
csharp 6-m.cs 97ms 2.6ms 36.0MB 163ms 13ms dotnet/aot 9.0.203
chapel 3-m.chpl 116ms 1.0ms 87.0MB 200ms 7ms chpl 1.31.0
go 7-m.go 132ms 1.0ms 23.6MB 343ms 30ms go 1.24.2
csharp 6-m.cs 178ms 11ms 58.2MB 260ms 27ms dotnet 9.0.203
csharp 6-m.cs 196ms 3.6ms 55.8MB 380ms 17ms mono 6.12.0
d 1-m.d 203ms 17ms 41.7MB 617ms 17ms dmd 2.111.0
dart 3-m.dart 214ms 8.4ms 185.8MB 517ms 73ms dart/exe 3.7.3
swift 2-m.swift 254ms 1.0ms 59.8MB 660ms 37ms swift 6.1.0
java 3-m.java 296ms 12ms 100.1MB 860ms 30ms openjdk 21
java 3-m.java 325ms 14ms 135.1MB 883ms 50ms graal/jvm 17.0.8
java 3-m.java 344ms 11ms 103.1MB 1013ms 43ms openjdk 23
python 3-m.py 378ms 4.0ms 75.7MB 953ms 153ms pypy 3.10.16
python 3-m.py 396ms 3.0ms 14.3MB 1300ms 67ms pyston 3.8.12
java 3-m.java 434ms 8.6ms 98.4MB 900ms 167ms openjdk/zgc 21
python 3-m.py 666ms 1.7ms 15.2MB 2340ms 70ms cpython 3.13.3