Results for 38 of 40 languages from this run on actest1.

Unavailable in this run: Hack, Lisp. Follow the run link for failure details.

Fortran VS Zig benchmarks

Current benchmark data was generated on Sun Sep 27 2026, full log can be found HERE

CONTRIBUTIONS are WELCOME!

[x86_64][4 cores] Intel(R) Core(TM) i7-3687U CPU @ 2.10GHz (Model 58)

* -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 138ms 0.5ms 1.1MB 127ms 0ms zig 0.14.1
fortran 4.f90 177ms 14ms 1.5MB 167ms 0ms gfortran 13.3.0

Input: 250000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
zig 1.zig 17ms 1.2ms 1.1MB 10ms 0ms zig 0.14.1
fortran 4.f90 23ms 3.7ms 2.7MB 13ms 0ms gfortran 13.3.0

helloworld

Input: QwQ

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
zig 1.zig 1.3ms 0.5ms 1.1MB 0ms 0ms zig 0.14.1
fortran 1.f90 1.7ms 0.3ms 1.6MB 0ms 0ms gfortran 13.3.0

nbody

Input: 5000000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
zig 3.zig 379ms 3.1ms 1.1MB 370ms 0ms zig 0.14.1
zig 2.zig 470ms 2.9ms 1.1MB 457ms 0ms zig 0.14.1
zig 1.zig 510ms 3.2ms 1.1MB 500ms 0ms zig 0.14.1
fortran 2.f90 610ms 47ms 1.5MB 600ms 0ms gfortran 13.3.0

Input: 500000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
zig 3.zig 42ms 3.2ms 1.1MB 33ms 0ms zig 0.14.1
zig 2.zig 50ms 2.1ms 1.1MB 40ms 0ms zig 0.14.1
zig 1.zig 56ms 2.3ms 1.1MB 47ms 0ms zig 0.14.1
fortran 2.f90 65ms 1.1ms 1.6MB 57ms 0ms gfortran 13.3.0

spectral-norm

Input: 8000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
fortran 3-m.f90 6051ms 7.3ms 1.5MB 23903ms 3ms gfortran 13.3.0
zig 1.zig 11057ms 6.2ms 1.1MB 11043ms 0ms zig 0.14.1
fortran 2.f90 11153ms 19ms 2.5MB 11143ms 0ms gfortran 13.3.0

Input: 4000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
fortran 3-m.f90 1522ms 3.5ms 1.5MB 5970ms 3ms gfortran 13.3.0
zig 1.zig 2773ms 1.4ms 1.1MB 2757ms 0ms zig 0.14.1
fortran 2.f90 2795ms 3.4ms 1.6MB 2783ms 0ms gfortran 13.3.0

Input: 2000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
fortran 3-m.f90 391ms 2.4ms 1.6MB 1477ms 0ms gfortran 13.3.0
zig 1.zig 697ms 1.0ms 1.1MB 690ms 0ms zig 0.14.1
fortran 2.f90 703ms 3.3ms 1.5MB 687ms 0ms gfortran 13.3.0