mudasobwa / screwdrivers
Small PHP library for benchmarking.
Installs: 14
Dependents: 0
Suggesters: 0
Security: 0
Stars: 3
Watchers: 1
Forks: 0
Open Issues: 0
Type:project
Requires
- mustangostang/spyc: 0.5.*@dev
Requires (Dev)
- behat/behat: 2.4.*@stable
- phpdocumentor/phpdocumentor: 2.*
This package is not auto-updated.
Last update: 2024-12-21 16:41:28 UTC
README
To ease the PHP development
Installation
$ vim composer.json
{ "require": { "mudasobwa/screwdrivers": "0.1.*" } }
$ curl http://getcomposer.org/installer | php
$ php composer.phar install --prefer-source
YardStick
YardStick is a class, providing easy access to benchmarking.
It allows the embedded-in-code becnhmarks, such as:
… $ys = new \Mudasobwa\Screwdrivers\YardStick(true); $ys->milestone('YS1#Start'); $my_obj->perform_long_operation($param1, $param2); $ys->milestone('YS2'); $my_obj->perform_long_operation($param3, $param4); $ys->milestone('YS1#Finish'); $ys->report('YS.+'); // report measures for milestones `YS*`
The output will be looking like:
==== Results for tag: [1396189882.6664-YS1#Start]
-- ⌚ Time ⇒ 03/30/14 14:31:22
-- ⌛ Memory: ⇒ 6915KB
-- Peak (1m): ⇒ 7075KB
-- Load: ⇒ 0.82
==== Diff for tags: [1396189882.6664 :: 1396189882.6989]
-- ⌚ Time: ⇒ 0.032443 sec
-- ⌛ Memory: ⇒ 7.0 KB
==== Diff for tags: [1396189882.6989 :: 1396189882.98]
-- ⌚ Time: ⇒ 0.281102 sec
-- ⌛ Memory: ⇒ 5.9 KB
——————————————————————————————————————
==== Diff for tags: [1396189882.6664 :: 1396189882.98]
-- ⌚ Time: ⇒ 0.313545 sec
-- ⌛ Memory: ⇒ 12.9 KB
Another way is to measure the specific methods (and/or compare them):
\Mudasobwa\Screwdrivers\YardStick::benchmark( new FlexibleString('Hello, world!'), 'replace', array('/l/', 'L') );