All knucleotide 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.)

knucleotide

Input: 2500000_in

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
c 1-m.c 174ms 4.0ms 25.5MB 410ms 7ms gcc 13.2.0
rust 8-m.rs 275ms 21ms 30.3MB 817ms 7ms rustc 1.75.0
c 1-m.c 306ms 28ms 29.7MB 1020ms 30ms clang 14.0.0-1ubuntu1.1
rust 8.rs 508ms 3.8ms 23.8MB 483ms 10ms rustc 1.75.0
csharp 6-m.cs 511ms 13ms 56.0MB 1300ms 30ms dotnet/aot 8.0.101
csharp 6-m.cs 629ms 31ms 82.6MB 1287ms 43ms dotnet 8.0.101
odin 1-m.odin 638ms 3.8ms 49.7MB 2017ms 60ms odin 2024
d 1-m.d 685ms 10ms 52.1MB 2280ms 13ms ldc2 1.36.0
chapel 3-m.chpl 766ms 18ms 101.0MB 1443ms 7ms chpl 1.31.0
zig 1.zig 771ms 2.9ms 20.4MB 750ms 7ms zig 0.12.0-dev.2341+92211135f
go 7-m.go 783ms 4.0ms 40.2MB 2817ms 27ms go 1.21.6
java 3-m.java 976ms 15ms 142.6MB 3320ms 40ms openjdk 23
csharp 6-m.cs 1015ms 14ms 69.1MB 2943ms 27ms mono 6.12.0
java 3-m.java 1035ms 59ms 129.1MB 3537ms 67ms openjdk 21
java 3-m.java 1111ms 17ms 183.2MB 3750ms 77ms graal/jvm 17.0.8
java 3-m.java 1429ms 32ms 178.3MB 4530ms 183ms openjdk/zgc 21
swift 2-m.swift 1458ms 77ms 72.0MB 5233ms 37ms swift 5.9.2
dart 3-m.dart 1651ms 46ms 279.4MB 4557ms 133ms dart/exe 3.2.6
d 1-m.d 1894ms 13ms 54.0MB 5653ms 17ms dmd 2.106.1
python 3-m.py 2331ms 35ms 135.9MB 7750ms 343ms pypy 3.10.13
python 3-m.py 3289ms 49ms 34.2MB 12493ms 123ms pyston 3.8.12
python 3.py timeout 0.0ms 35.9MB 87ms 27ms cpython 3.12.1

Input: 250000_in

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
c 1-m.c 28ms 1.9ms 13.4MB 63ms 0ms gcc 13.2.0
rust 8-m.rs 36ms 1.1ms 17.8MB 73ms 7ms rustc 1.75.0
c 1-m.c 41ms 4.7ms 16.8MB 107ms 7ms clang 14.0.0-1ubuntu1.1
rust 8.rs 66ms 2.6ms 11.4MB 50ms 0ms rustc 1.75.0
d 1-m.d 88ms 3.2ms 39.2MB 237ms 7ms ldc2 1.36.0
zig 1.zig 90ms 2.1ms 7.0MB 80ms 0ms zig 0.12.0-dev.2341+92211135f
csharp 6-m.cs 98ms 5.9ms 46.2MB 173ms 23ms dotnet/aot 8.0.101
chapel 3-m.chpl 120ms 0.8ms 90.9MB 207ms 3ms chpl 1.31.0
odin 1-m.odin 138ms 3.4ms 33.3MB 260ms 70ms odin 2024
go 7-m.go 147ms 4.5ms 30.6MB 373ms 37ms go 1.21.6
csharp 6.cs 167ms 13ms 72.2MB 207ms 30ms dotnet 8.0.101
d 1-m.d 196ms 5.4ms 41.5MB 583ms 13ms dmd 2.106.1
csharp 6-m.cs 198ms 0.7ms 57.8MB 380ms 20ms mono 6.12.0
dart 3-m.dart 261ms 3.2ms 196.8MB 633ms 73ms dart/exe 3.2.6
swift 2-m.swift 262ms 1.4ms 63.5MB 697ms 20ms swift 5.9.2
java 3-m.java 314ms 22ms 88.4MB 907ms 47ms openjdk 23
java 3-m.java 329ms 5.5ms 100.1MB 987ms 50ms openjdk 21
java 3-m.java 337ms 30ms 145.3MB 897ms 57ms graal/jvm 17.0.8
python 3-m.py 404ms 0.9ms 17.7MB 1333ms 70ms pyston 3.8.12
python 3-m.py 409ms 2.6ms 71.4MB 1023ms 163ms pypy 3.10.13
java 3-m.java 428ms 11ms 98.6MB 890ms 150ms openjdk/zgc 21
python 3-m.py 694ms 3.6ms 17.5MB 2423ms 80ms cpython 3.12.1