Skip to content

dotPHP/phpbench

 
 

Repository files navigation

PhpBench

PHPBench Logo Build Status

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 reference 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.

Community

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.

Packages

No packages published

Languages

  • PHP 98.6%
  • XSLT 1.2%
  • Other 0.2%