phpbench/phpbench

PHP Benchmarking Framework

0.14.0 2017-12-05 15:55 UTC

README

PHPBench Logo Build Status StyleCI

PhpBench is a benchmarking framework for PHP.

Features:

  • Nice command line interface.
  • Generate reports and render them to different mediums (Console, HTML, Markdown, etc).
  • Benchmarks executed in a separate process, no effective overhead, no autoloader pollution.
  • Control stability of results with multiple iterations and retry threshold.
  • Memory usage statistics.
  • Records environment (e.g. VCS info, OS info, etc.)
  • Standard deviation and Z-Scores.
  • Kernel density estimate used to estimate the mode.
  • Time unit specification.
  • Output mode specification (throughput, average time).
  • Parameterized benchmarking cases.
  • Per-project configuration.
  • Store and query results.
  • Before and After method / class specification.
  • Pause (recover) between iterations.
  • Assertions.
  • Extendable.
  • More..

Installation Instructions

You can install PHPBench either as as a PHAR or as a project dependency.

Installing as a PHAR allows you to easily self-update to the latest. bleeding edge, version.

See the installation instructions for information on both methods of installation.

Documentation

See the official documentation.

Screenshots

Default output:

phpbench-standard

Aggregate report with "dots" logger:

phpbench-aggregate

Blinken logger:

phpbench-blinken

HTML report:

phpbench2

Storage log:

storage_log

See also

This library was influenced by the athletic benchmarking framework.