Php VS Wasm benchmarks

Current benchmark data was generated on Sun Jun 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
wasm 5.rs 1744ms 15ms 33.9MB 1727ms 10ms wasmtime 33.0.0
wasm 3.rs 1791ms 35ms 49.9MB 1760ms 13ms wasmtime 33.0.0
wasm 4.rs 1806ms 5.3ms 33.9MB 1783ms 10ms wasmtime 33.0.0
php 1.php timeout 0.0ms 141.6MB 4967ms 20ms php 8.2.28

Input: 15

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
wasm 5.rs 170ms 3.5ms 20.1MB 160ms 0ms wasmtime 33.0.0
wasm 3.rs 174ms 3.4ms 21.9MB 160ms 0ms wasmtime 33.0.0
wasm 4.rs 195ms 7.7ms 19.9MB 180ms 0ms wasmtime 33.0.0
php 1.php 612ms 2.9ms 62.7MB 577ms 20ms php 8.2.28

helloworld

Input: QwQ

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
wasm 1.rs 6.2ms 0.3ms 15.3MB 0ms 0ms wasmtime 33.0.0
php 1.php 44ms 1.2ms 52.5MB 16ms 18ms php 8.2.28

merkletrees

Input: 17

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
wasm 1.rs 869ms 4.9ms 41.9MB 847ms 10ms wasmtime 33.0.0
php 1.php 3755ms 29ms 113.8MB 3717ms 27ms php 8.2.28

Input: 15

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
wasm 1.rs 193ms 3.5ms 26.0MB 177ms 0ms wasmtime 33.0.0
php 1.php 838ms 4.0ms 67.2MB 800ms 20ms php 8.2.28