maddrid/bench

( Benchmarking/Profiling ) utility class to measure the amount of time , memory (server load) that elapses between two or more points.

1.0.0 2020-08-21 22:07 UTC

This package is auto-updated.

Last update: 2024-10-23 04:56:52 UTC


README

( Benchmarking / Profiling / Timing ) class to measure the amount of time , memory (server load) that elapses between two (or more) points.

Install

"require": {
   "maddrid/bench": "dev-master"
  }

Usage

As Simple as Possible

use Maddrid\Bench as Bench ;

Bench::start('first_point');
  do_some_math
    Bench::start('second_point');
      do_more_math
    Bench::stop('second_point');
    Bench::start('third_point');
      do_more_math
    Bench::stop('third_point');
Bench::stop('first_point');

Display

//more details

Bench::printTimers(true);

keep it simple

Bench::printTimers();

Get timers

Bench::getTimers();
Bench::getTimers(null);
Bench::getTimers(true);
Bench::getTimers(null,5);
Bench::getTimers(true,5);

Stop the timer

Bench::stop('first_point'); 

// will get server load

Bench::stop('first_point',true);

Known facts

When getting server load

Bench::stop('first_point',true);

Will add aditional seconds on the checkpoint . If checkpoint is nested , "the Parent/s " checkpoints will inherit those seconds .