Skip to content

PHP Benchmarking framework

License

Notifications You must be signed in to change notification settings

potherca-contrib/phpbench

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,467 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SWUbanner

StandWithUkraine CI Documentation Latest Stable Version Total Downloads License

PHPBench is a benchmark runner for PHP analogous to PHPUnit but for performance rather than correctness.

Features include:

  • Revolutions: Repeat your code many times to determine average execution time.
  • Iterations: Sample your revolutions many times and review aggregated statistical data.
  • Process Isolation: Each iteration is executed in a separate process.
  • Reporting: Customizable reports and various output formats (e.g. console, CSV, Markdown, HTML).
  • Report storage and comparison: Store benchmarks locally to be used as a baseline reference, or to reference them later.
  • Memory Usage: Keep an eye on the amount of memory used by benchmarking subjects.
  • Assertions: Assert that code is performing within acceptable limits, or that it has not regressed from a previously recorded baseline.

See the documentation to find out more.

Installation

composer require phpbench/phpbench --dev

See the installation instructions for more options.

Documentation

Documentation is hosted on readthedocs.

Community

  • Follow @phpbench on Mastodon for the latest news.
  • Join the #phpbench channel on the Slack Symfony Devs channel.

Screenshots

Running benchmarks and comparing against a baseline:

phpbench

Aggregated report:

image

Blinken logger:

phpbench-blinken

HTML Bar Chart:

Untitled

Console Bar Chart:

Untitled

Contributing

PHPBench is an open source project. If you find a problem or want to discuss new features or improvements please create an issue, and/or if possible create a pull request.

About

PHP Benchmarking framework

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 99.4%
  • Other 0.6%