All fasta problem benchmarks

Current benchmark data was generated on Wed Jan 22 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.)

fasta

Input: 2500000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
zig 1.zig 87ms 0.6ms 1.1MB 80ms 0ms zig 0.13.0
rust 5c-m.rs 88ms 0.2ms 6.5MB 233ms 3ms rustc 1.84.0
rust 5-m.rs 98ms 2.1ms 4.8MB 310ms 3ms rustc 1.84.0
chapel 5-m.chpl 112ms 0.7ms 32.4MB 187ms 3ms chpl 1.31.0
go 3-m.go 127ms 2.7ms 5.4MB 403ms 0ms go 1.23.5
csharp 5-m.cs 138ms 5.4ms 33.9MB 347ms 123ms dotnet/aot 9.0.102
swift 3-m.swift 140ms 3.0ms 24.8MB 380ms 3ms swift 6.0.3
rust 1c.rs 163ms 1.0ms 1.9MB 153ms 0ms rustc 1.84.0
nim 2.nim 185ms 2.3ms 1.5MB 177ms 0ms nim 2.2.0
csharp 5-m.cs 188ms 2.6ms 50.8MB 470ms 113ms dotnet 9.0.102
d 1.d 195ms 0.9ms 48.8MB 170ms 10ms ldc2 1.40.0
rust 1.rs 204ms 1.5ms 1.9MB 190ms 0ms rustc 1.84.0
wasm 1.rs 233ms 1.1ms 19.7MB 220ms 0ms wasmtime 29.0.1
nim 2.nim 238ms 0.8ms 1.8MB 227ms 0ms nim/clang 2.2.0
csharp 5-m.cs 259ms 14ms 58.4MB 653ms 157ms mono 6.12.0
ocaml 6.ml 345ms 2.4ms 24.9MB 333ms 0ms ocaml 5.3.0
dart 1.dart 364ms 1.8ms 8.6MB 353ms 0ms dart/exe 3.6.1
java 4.java 443ms 2.7ms 106.4MB 627ms 30ms graal/jvm 17.0.8
java 4.java 452ms 4.1ms 47.5MB 537ms 20ms openjdk 21
java 4.java 457ms 2.3ms 49.1MB 537ms 27ms openjdk 23
v 1.v 509ms 3.4ms 1.3MB 493ms 3ms v/clang 0.4.9
v 1.v 534ms 2.1ms 2.1MB 520ms 0ms v/clang+gc 0.4.9
java 4.java 563ms 2.8ms 45.2MB 537ms 130ms openjdk/zgc 21
crystal 2.cr 573ms 3.5ms 3.5MB 450ms 107ms crystal 1.15.0
nim 1.nim 578ms 7.8ms 1.8MB 453ms 110ms nim/clang 2.2.0
nim 1.nim 599ms 1.3ms 1.5MB 473ms 110ms nim 2.2.0
d 1.d 621ms 2.2ms 43.8MB 610ms 3ms dmd 2.109.1
crystal 1.cr 720ms 0.6ms 14.6MB 573ms 127ms crystal 1.15.0
python 1.py 1911ms 8.2ms 88.3MB 1857ms 40ms pypy 3.10.14
ruby 6.rb 2040ms 8.8ms 23.1MB 2023ms 0ms ruby/yjit 3.4.1
typescript 1.ts 2097ms 5.3ms 60.8MB 1977ms 130ms deno 2.1.7
ruby 6-m.rb 2230ms 140ms 416.5MB 5760ms 373ms truffleruby 24.1.2
haxe 1.hx 2444ms 20ms 27.5MB 2297ms 270ms haxe/cpp 4.3.6
python 5-m.py 2495ms 45ms 12.5MB 3553ms 1080ms pyston 3.8.12
python 5-m.py 2855ms 12ms 65.0MB 4090ms 777ms pypy 3.10.14
python 1.py 3021ms 48ms 8.1MB 3007ms 0ms pyston 3.8.12
python 5-m.py 3417ms 98ms 13.9MB 4510ms 963ms cpython 3.13.1
perl 1.pl 3604ms 17ms 10.9MB 3590ms 0ms perl 5.40.1
ruby 6.rb 3691ms 41ms 22.5MB 3663ms 13ms ruby 3.4.1
python 1.py 4635ms 124ms 8.6MB 4623ms 0ms cpython 3.13.1
haxe 1.hx timeout 0.0ms 5.3MB 4280ms 930ms haxe/hl/c 4.3.6
haxe 1.hx timeout 0.0ms 5.5MB 4340ms 887ms 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.1ms 1.1MB 0ms 0ms zig 0.13.0
rust 5c-m.rs 16ms 0.2ms 4.8MB 23ms 0ms rustc 1.84.0
rust 5-m.rs 17ms 0.4ms 6.5MB 20ms 7ms rustc 1.84.0
go 3-m.go 18ms 0.6ms 5.4MB 37ms 0ms go 1.23.5
rust 1c.rs 19ms 0.5ms 1.9MB 10ms 0ms rustc 1.84.0
nim 2.nim 20ms 0.3ms 1.5MB 10ms 0ms nim 2.2.0
rust 1.rs 23ms 0.1ms 1.9MB 10ms 0ms rustc 1.84.0
d 1.d 24ms 0.4ms 12.1MB 17ms 0ms ldc2 1.40.0
nim 2.nim 26ms 0.3ms 1.8MB 13ms 0ms nim/clang 2.2.0
csharp 5-m.cs 26ms 1.6ms 23.7MB 33ms 17ms dotnet/aot 9.0.102
chapel 5.chpl 29ms 0.2ms 32.4MB 23ms 0ms chpl 1.31.0
wasm 1.rs 31ms 1.1ms 19.5MB 17ms 3ms wasmtime 29.0.1
swift 3.swift 37ms 0.2ms 18.1MB 33ms 0ms swift 6.0.3
ocaml 6.ml 38ms 0.2ms 7.5MB 23ms 0ms ocaml 5.3.0
dart 1.dart 43ms 0.9ms 8.8MB 30ms 0ms dart/exe 3.6.1
v 1.v 52ms 0.1ms 1.3MB 43ms 0ms v/clang 0.4.9
v 1.v 56ms 1.3ms 2.1MB 50ms 0ms v/clang+gc 0.4.9
nim 1.nim 60ms 0.5ms 1.8MB 37ms 10ms nim/clang 2.2.0
csharp 5-m.cs 61ms 1.5ms 47.1MB 83ms 20ms dotnet 9.0.102
crystal 2.cr 61ms 1.2ms 3.5MB 43ms 7ms crystal 1.15.0
nim 1.nim 62ms 0.1ms 1.5MB 40ms 10ms nim 2.2.0
d 1.d 67ms 1.3ms 12.0MB 57ms 0ms dmd 2.109.1
csharp 5-m.cs 70ms 1.0ms 39.6MB 103ms 17ms mono 6.12.0
crystal 1.cr 76ms 0.8ms 4.9MB 53ms 7ms crystal 1.15.0
java 4.java 125ms 1.5ms 46.5MB 167ms 10ms openjdk 21
java 4-m.java 125ms 2.0ms 47.9MB 170ms 20ms openjdk 23
java 4-m.java 130ms 6.6ms 92.6MB 180ms 33ms graal/jvm 17.0.8
java 4.java 239ms 4.5ms 46.0MB 160ms 133ms openjdk/zgc 21
python 1.py 251ms 0.5ms 63.5MB 217ms 13ms pypy 3.10.14
typescript 1.ts 253ms 17ms 59.5MB 230ms 23ms deno 2.1.7
haxe 1.hx 260ms 0.3ms 27.5MB 220ms 40ms haxe/cpp 4.3.6
ruby 6.rb 281ms 27ms 15.2MB 257ms 10ms ruby/yjit 3.4.1
python 1.py 311ms 2.8ms 8.1MB 300ms 0ms pyston 3.8.12
python 5-m.py 312ms 2.4ms 12.5MB 397ms 143ms pyston 3.8.12
perl 1.pl 383ms 27ms 6.5MB 367ms 0ms perl 5.40.1
python 5-m.py 402ms 4.6ms 13.8MB 477ms 150ms cpython 3.13.1
ruby 6.rb 424ms 3.1ms 14.5MB 403ms 3ms ruby 3.4.1
python 1.py 471ms 5.4ms 8.8MB 460ms 0ms cpython 3.13.1
python 5-m.py 544ms 2.1ms 64.9MB 817ms 287ms pypy 3.10.14
haxe 1.hx 653ms 2.7ms 5.4MB 547ms 123ms haxe/hl/c 4.3.6
haxe 1.hx 691ms 7.5ms 5.7MB 580ms 127ms haxe/hl/jit 1.14.0
ruby 6-m.rb 803ms 10ms 383.2MB 1957ms 183ms truffleruby 24.1.2