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

fasta

Input: 2500000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
zig 1.zig 81ms 0.5ms 1.1MB 70ms 0ms zig 0.13.0
rust 5c-m.rs 85ms 1.4ms 4.8MB 237ms 0ms rustc 1.83.0
rust 5-m.rs 92ms 2.4ms 4.8MB 300ms 0ms rustc 1.83.0
chapel 5-m.chpl 110ms 2.4ms 32.4MB 183ms 3ms chpl 1.31.0
go 3-m.go 123ms 1.8ms 5.4MB 377ms 7ms go 1.23.4
csharp 5-m.cs 125ms 14ms 32.7MB 347ms 80ms dotnet/aot 9.0.101
swift 3-m.swift 135ms 5.7ms 24.6MB 367ms 7ms swift 6.0.3
rust 1c.rs 156ms 3.7ms 1.9MB 147ms 0ms rustc 1.83.0
nim 2.nim 174ms 1.9ms 1.5MB 160ms 0ms nim 2.2.0
csharp 5-m.cs 183ms 1.2ms 48.7MB 453ms 110ms dotnet 9.0.101
d 1.d 186ms 2.6ms 48.7MB 177ms 0ms ldc2 1.40.0
rust 1.rs 189ms 6.0ms 1.9MB 177ms 0ms rustc 1.83.0
wasm 1.rs 223ms 4.1ms 19.0MB 203ms 3ms wasmtime 28.0.0
nim 2.nim 226ms 6.1ms 1.8MB 213ms 0ms nim/clang 2.2.0
csharp 5-m.cs 239ms 14ms 59.0MB 640ms 97ms mono 6.12.0
ocaml 6.ml 329ms 3.1ms 24.9MB 313ms 0ms ocaml 5.2.1
dart 1.dart 342ms 3.8ms 8.9MB 327ms 0ms dart/exe 3.6.0
java 4.java 415ms 6.6ms 107.3MB 563ms 50ms graal/jvm 17.0.8
java 4.java 431ms 15ms 47.5MB 517ms 20ms openjdk 21
java 4.java 439ms 9.7ms 49.3MB 523ms 17ms openjdk 23
v 1.v 485ms 7.6ms 1.3MB 473ms 0ms v/clang 0.4.9
v 1.v 510ms 4.4ms 2.1MB 497ms 0ms v/clang+gc 0.4.9
crystal 2.cr 515ms 7.3ms 3.4MB 413ms 90ms crystal 1.14.0
java 4.java 541ms 2.5ms 44.9MB 507ms 133ms openjdk/zgc 21
nim 1.nim 542ms 6.4ms 1.8MB 420ms 110ms nim/clang 2.2.0
nim 1.nim 569ms 4.4ms 1.5MB 470ms 87ms nim 2.2.0
d 1.d 590ms 10ms 42.2MB 573ms 7ms dmd 2.109.1
crystal 1.cr 693ms 6.0ms 14.7MB 553ms 127ms crystal 1.14.0
python 1.py 1807ms 11ms 88.3MB 1767ms 30ms pypy 3.10.14
ruby 6.rb 1932ms 6.9ms 23.1MB 1903ms 13ms ruby/yjit 3.4.1
typescript 1.ts 1978ms 8.0ms 62.4MB 1837ms 150ms deno 2.1.4
ruby 6-m.rb 2232ms 278ms 405.0MB 5723ms 367ms truffleruby 24.1.1
haxe 1.hx 2331ms 12ms 25.6MB 2153ms 247ms haxe/cpp 4.3.6
python 5-m.py 2335ms 46ms 12.5MB 3357ms 953ms pyston 3.8.12
python 5-m.py 2672ms 21ms 64.9MB 3783ms 763ms pypy 3.10.14
python 1.py 2864ms 24ms 8.1MB 2850ms 3ms pyston 3.8.12
python 5-m.py 3195ms 8.8ms 13.8MB 4240ms 883ms cpython 3.13.1
perl 1.pl 3446ms 24ms 10.9MB 3430ms 3ms perl 5.40.0
ruby 6.rb 3470ms 35ms 22.4MB 3443ms 10ms ruby 3.4.1
python 1.py 4308ms 7.9ms 8.8MB 4297ms 0ms cpython 3.13.1
haxe 1.hx timeout 0.0ms 5.2MB 4270ms 933ms haxe/hl/c 4.3.6
haxe 1.hx timeout 0.0ms 5.7MB 4277ms 947ms haxe/hl/jit 1.14.0

Input: 250000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
zig 1.zig 10ms 0.6ms 1.1MB 0ms 0ms zig 0.13.0
rust 5c-m.rs 15ms 0.7ms 4.8MB 23ms 0ms rustc 1.83.0
rust 5-m.rs 16ms 0.1ms 4.8MB 27ms 0ms rustc 1.83.0
go 3-m.go 17ms 0.2ms 5.4MB 30ms 0ms go 1.23.4
rust 1c.rs 18ms 0.1ms 1.9MB 10ms 0ms rustc 1.83.0
nim 2.nim 20ms 0.4ms 1.5MB 10ms 0ms nim 2.2.0
rust 1.rs 21ms 0.3ms 1.9MB 10ms 0ms rustc 1.83.0
d 1.d 22ms 0.2ms 10.5MB 17ms 0ms ldc2 1.40.0
nim 2.nim 25ms 1.4ms 1.8MB 17ms 0ms nim/clang 2.2.0
csharp 5-m.cs 25ms 1.8ms 25.1MB 33ms 17ms dotnet/aot 9.0.101
chapel 5.chpl 27ms 0.7ms 32.4MB 23ms 0ms chpl 1.31.0
wasm 1.rs 29ms 0.1ms 19.3MB 20ms 0ms wasmtime 28.0.0
swift 3.swift 35ms 0.4ms 18.3MB 33ms 0ms swift 6.0.3
ocaml 6.ml 37ms 0.4ms 7.4MB 27ms 0ms ocaml 5.2.1
dart 1.dart 40ms 1.2ms 8.9MB 30ms 0ms dart/exe 3.6.0
v 1.v 50ms 0.4ms 1.3MB 40ms 0ms v/clang 0.4.9
v 1.v 53ms 0.4ms 2.1MB 43ms 0ms v/clang+gc 0.4.9
crystal 2.cr 55ms 0.3ms 3.4MB 33ms 10ms crystal 1.14.0
nim 1.nim 58ms 0.7ms 1.8MB 30ms 17ms nim/clang 2.2.0
csharp 5-m.cs 59ms 1.5ms 44.6MB 63ms 30ms dotnet 9.0.101
nim 1.nim 60ms 2.1ms 1.5MB 37ms 10ms nim 2.2.0
d 1.d 63ms 2.0ms 14.1MB 53ms 0ms dmd 2.109.1
csharp 5-m.cs 71ms 2.1ms 39.6MB 93ms 33ms mono 6.12.0
crystal 1.cr 72ms 1.1ms 4.5MB 50ms 10ms crystal 1.14.0
java 4.java 116ms 0.7ms 46.4MB 150ms 17ms openjdk 21
java 4.java 117ms 0.9ms 47.5MB 153ms 17ms openjdk 23
java 4-m.java 132ms 7.0ms 97.4MB 180ms 37ms graal/jvm 17.0.8
java 4.java 226ms 9.1ms 43.9MB 153ms 130ms openjdk/zgc 21
typescript 1.ts 230ms 6.3ms 61.2MB 203ms 27ms deno 2.1.4
python 1.py 238ms 5.8ms 63.6MB 210ms 13ms pypy 3.10.14
ruby 6.rb 245ms 2.3ms 15.2MB 227ms 3ms ruby/yjit 3.4.1
haxe 1.hx 246ms 5.3ms 27.5MB 200ms 40ms haxe/cpp 4.3.6
python 5-m.py 295ms 6.0ms 12.5MB 383ms 127ms pyston 3.8.12
python 1.py 299ms 3.5ms 8.1MB 287ms 0ms pyston 3.8.12
perl 1.pl 357ms 7.1ms 6.6MB 343ms 0ms perl 5.40.0
python 5-m.py 377ms 1.5ms 13.8MB 457ms 123ms cpython 3.13.1
ruby 6.rb 395ms 4.5ms 14.5MB 377ms 3ms ruby 3.4.1
python 1.py 451ms 3.5ms 8.8MB 440ms 3ms cpython 3.13.1
python 5-m.py 510ms 5.7ms 64.9MB 750ms 283ms pypy 3.10.14
haxe 1.hx 622ms 7.2ms 5.3MB 507ms 127ms haxe/hl/c 4.3.6
haxe 1.hx 650ms 2.7ms 5.8MB 553ms 113ms haxe/hl/jit 1.14.0
ruby 6-m.rb 782ms 23ms 404.7MB 1910ms 177ms truffleruby 24.1.1