This project benchmarks PHP formatters (Mago Fmt, Pretty PHP), linters (Mago Lint, PHP-CS-Fixer, PHPCS), and static analyzers (Mago, PHPStan, Psalm, Phan) against real-world open-source codebases.
All tools are run on the same machine, during the same session, under identical conditions. Every tool is configured at its strictest settings to ensure maximum work. Execution time is measured using a built-in profiler with multiple runs. Peak memory usage is calculated by polling RSS across the entire process tree (including child processes). For static analyzers, both cold (uncached) and hot (cached) runs are measured. A 5-minute timeout is enforced on every run; tools marked as "Timed out" could not complete within this limit. Results are sorted by mean execution time.