Php VS Rust benchmarks

Current benchmark data was generated on Tue Apr 01 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.)

binarytrees

Input: 18

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
rust 4.rs 1275ms 2.7ms 33.8MB 1250ms 10ms rustc 1.85.1
rust 5.rs 1350ms 10ms 33.8MB 1330ms 7ms rustc 1.85.1
rust 3.rs 1456ms 37ms 49.8MB 1427ms 20ms rustc 1.85.1
php 1.php timeout 0.0ms 141.8MB 4963ms 23ms php 8.2.28

Input: 15

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
rust 4.rs 119ms 2.7ms 5.8MB 110ms 0ms rustc 1.85.1
rust 5.rs 127ms 3.5ms 5.8MB 117ms 0ms rustc 1.85.1
rust 3.rs 143ms 2.0ms 7.8MB 130ms 0ms rustc 1.85.1
php 1.php 623ms 2.8ms 63.1MB 587ms 23ms php 8.2.28

helloworld

Input: QwQ

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
rust 1.rs 1.3ms 0.0ms 1.8MB 0ms 0ms rustc 1.85.1
rust 1.rs 1.4ms 0.1ms 1.8MB 0ms 0ms rustc 1.88.0-nightly
php 1.php 52ms 1.0ms 52.8MB 20ms 20ms php 8.2.28

merkletrees

Input: 17

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
rust 1.rs 763ms 45ms 33.8MB 737ms 10ms rustc 1.85.1
php 1.php 4055ms 54ms 114.0MB 4010ms 30ms php 8.2.28

Input: 15

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
rust 1.rs 153ms 2.9ms 9.8MB 143ms 0ms rustc 1.85.1
php 1.php 842ms 8.7ms 67.2MB 803ms 20ms php 8.2.28