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

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

Perl 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.)

binarytrees

Input: 18

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
zig 1.zig 2945ms 28ms 49.1MB 2920ms 7ms zig 0.14.1
perl 1.pl 28055ms 391ms 77.2MB 28003ms 33ms perl 5.38.2

Input: 15

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
zig 1.zig 280ms 53ms 7.1MB 240ms 0ms zig 0.14.1
perl 1.pl 2485ms 46ms 13.8MB 2467ms 3ms perl 5.38.2

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
perl 1.pl 6630ms 80ms 10.6MB 6613ms 0ms perl 5.38.2

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
perl 1.pl 657ms 22ms 6.3MB 643ms 0ms perl 5.38.2

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
perl 1.pl 2.8ms 0.7ms 3.8MB 0ms 0ms perl 5.38.2

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
perl 2.pl 42316ms 505ms 5.8MB 42303ms 0ms perl 5.38.2

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
perl 2.pl 4206ms 31ms 5.8MB 4193ms 0ms perl 5.38.2

spectral-norm

Input: 8000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
zig 1.zig 11057ms 6.2ms 1.1MB 11043ms 0ms zig 0.14.1
perl 4-m.pl 126524ms 1315ms 13.2MB 496153ms 227ms perl 5.38.2

Input: 4000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
zig 1.zig 2773ms 1.4ms 1.1MB 2757ms 0ms zig 0.14.1
perl 4-m.pl 31168ms 843ms 11.7MB 121797ms 47ms perl 5.38.2

Input: 2000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
zig 1.zig 697ms 1.0ms 1.1MB 690ms 0ms zig 0.14.1
perl 4-m.pl 7425ms 112ms 9.9MB 28747ms 17ms perl 5.38.2