Last active
September 28, 2015 20:25
-
-
Save weierophinney/34d5781d1a9f34785c64 to your computer and use it in GitHub Desktop.
Athletic benchmark results of zend-eventmanager, to detail performance improvements from v2 to v3. Two separate benchmarks are shown for v3, one detailing the original strategy of "prepare shared listeners only on the first trigger" and one detailing the strategy where shared listeners are prepared on every trigger, demonstrating we can do so wi…
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Benchmarks from current v2 master. | |
ZendBench\EventManager\MultipleEventIndividualSharedListener | |
Method Name Iterations Average Time Ops/second | |
------------ ------------ ----------------- ------------- | |
trigger : [ 5,000] [0.0001748194695] [5,720.18668] | |
ZendBench\EventManager\MultipleEventLocalListener | |
Method Name Iterations Average Time Ops/second | |
------------ ------------ ----------------- ------------- | |
trigger : [ 5,000] [0.0001006753922] [9,932.91388] | |
ZendBench\EventManager\MultipleEventMultipleLocalAndSharedListener | |
Method Name Iterations Average Time Ops/second | |
------------ ------------ ----------------- ------------ | |
trigger : [ 5,000] [0.0022994998455] [434.87718 ] | |
ZendBench\EventManager\MultipleEventMultipleSharedListener | |
Method Name Iterations Average Time Ops/second | |
------------ ------------ ----------------- ------------- | |
trigger : [ 5,000] [0.0006278086662] [1,592.84198] | |
ZendBench\EventManager\SingleEventMultipleListener | |
Method Name Iterations Average Time Ops/second | |
------------ ------------ ----------------- ------------- | |
trigger : [ 5,000] [0.0005089021683] [1,965.01423] | |
ZendBench\EventManager\SingleEventMultipleSharedListener | |
Method Name Iterations Average Time Ops/second | |
------------ ------------ ----------------- ------------- | |
trigger : [ 5,000] [0.0008424067497] [1,187.07501] | |
ZendBench\EventManager\SingleEventSingleListener | |
Method Name Iterations Average Time Ops/second | |
------------ ------------ ----------------- -------------- | |
trigger : [ 5,000] [0.0000391073227] [25,570.65867] | |
ZendBench\EventManager\SingleEventSingleSharedListener | |
Method Name Iterations Average Time Ops/second | |
------------ ------------ ----------------- -------------- | |
trigger : [ 5,000] [0.0000679784775] [14,710.53835] | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
ZendBench\EventManager\MultipleEventIndividualSharedListener | |
Method Name Iterations Average Time Ops/second | |
------- ------------ -------------- ------------- | |
trigger: [5,000 ] [0.0000650412560] [15,374.85686] | |
ZendBench\EventManager\MultipleEventLocalListener | |
Method Name Iterations Average Time Ops/second | |
------- ------------ -------------- ------------- | |
trigger: [5,000 ] [0.0000530229568] [18,859.75546] | |
ZendBench\EventManager\MultipleEventMultipleLocalAndSharedListener | |
Method Name Iterations Average Time Ops/second | |
------- ------------ -------------- ------------- | |
trigger: [5,000 ] [0.0007908065319] [1,264.53179] | |
ZendBench\EventManager\MultipleEventMultipleSharedListener | |
Method Name Iterations Average Time Ops/second | |
------- ------------ -------------- ------------- | |
trigger: [5,000 ] [0.0001328581333] [7,526.82561] | |
ZendBench\EventManager\SingleEventMultipleListener | |
Method Name Iterations Average Time Ops/second | |
------- ------------ -------------- ------------- | |
trigger: [5,000 ] [0.0001417944431] [7,052.46255] | |
ZendBench\EventManager\SingleEventMultipleSharedListener | |
Method Name Iterations Average Time Ops/second | |
------- ------------ -------------- ------------- | |
trigger: [5,000 ] [0.0001456176758] [6,867.29818] | |
ZendBench\EventManager\SingleEventSingleListener | |
Method Name Iterations Average Time Ops/second | |
------- ------------ -------------- ------------- | |
trigger: [5,000 ] [0.0000218240738] [45,820.95944] | |
ZendBench\EventManager\SingleEventSingleSharedListener | |
Method Name Iterations Average Time Ops/second | |
------- ------------ -------------- ------------- | |
trigger: [5,000 ] [0.0000281458855] [35,529.17179] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Benchmarks from EventManager v3 refactor with "prepare on each trigger" strategy (feature parity with v2) | |
ZendBench\EventManager\MultipleEventIndividualSharedListener | |
Method Name Iterations Average Time Ops/second | |
------------ ------------ ----------------- ------------- | |
trigger : [ 5,000] [0.0001748047829] [5,720.66727] | |
ZendBench\EventManager\MultipleEventLocalListener | |
Method Name Iterations Average Time Ops/second | |
------------ ------------ ----------------- -------------- | |
trigger : [ 5,000] [0.0000996248722] [10,037.65403] | |
ZendBench\EventManager\MultipleEventMultipleLocalAndSharedListener | |
Method Name Iterations Average Time Ops/second | |
------------ ------------ ----------------- ------------ | |
trigger : [ 5,000] [0.0023536602020] [424.87017 ] | |
ZendBench\EventManager\MultipleEventMultipleSharedListener | |
Method Name Iterations Average Time Ops/second | |
------------ ------------ ----------------- ------------- | |
trigger : [ 5,000] [0.0006869523525] [1,455.70504] | |
ZendBench\EventManager\SingleEventMultipleListener | |
Method Name Iterations Average Time Ops/second | |
------------ ------------ ----------------- ------------- | |
trigger : [ 5,000] [0.0004886499405] [2,046.45477] | |
ZendBench\EventManager\SingleEventMultipleSharedListener | |
Method Name Iterations Average Time Ops/second | |
------------ ------------ ----------------- ------------- | |
trigger : [ 5,000] [0.0008346837521] [1,198.05854] | |
ZendBench\EventManager\SingleEventSingleListener | |
Method Name Iterations Average Time Ops/second | |
------------ ------------ ----------------- -------------- | |
trigger : [ 5,000] [0.0000377335072] [26,501.64470] | |
ZendBench\EventManager\SingleEventSingleSharedListener | |
Method Name Iterations Average Time Ops/second | |
------------ ------------ ----------------- -------------- | |
trigger : [ 5,000] [0.0000681439877] [14,674.80895] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Benchmarks from EventManager v3 refactor with "prepare on first trigger only" strategy | |
ZendBench\EventManager\MultipleEventIndividualSharedListener | |
Method Name Iterations Average Time Ops/second | |
------- ------------ -------------- ------------- | |
trigger: [5,000 ] [0.0001482594967] [6,744.93049] | |
ZendBench\EventManager\MultipleEventLocalListener | |
Method Name Iterations Average Time Ops/second | |
------- ------------ -------------- ------------- | |
trigger: [5,000 ] [0.0000952682972] [10,496.67129] | |
ZendBench\EventManager\MultipleEventMultipleLocalAndSharedListener | |
Method Name Iterations Average Time Ops/second | |
------- ------------ -------------- ------------- | |
trigger: [5,000 ] [0.0022431646824] [445.79874] | |
ZendBench\EventManager\MultipleEventMultipleSharedListener | |
Method Name Iterations Average Time Ops/second | |
------- ------------ -------------- ------------- | |
trigger: [5,000 ] [0.0005414091587] [1,847.03192] | |
ZendBench\EventManager\SingleEventMultipleListener | |
Method Name Iterations Average Time Ops/second | |
------- ------------ -------------- ------------- | |
trigger: [5,000 ] [0.0005128520012] [1,949.88027] | |
ZendBench\EventManager\SingleEventMultipleSharedListener | |
Method Name Iterations Average Time Ops/second | |
------- ------------ -------------- ------------- | |
trigger: [5,000 ] [0.0008489616394] [1,177.90952] | |
ZendBench\EventManager\SingleEventSingleListener | |
Method Name Iterations Average Time Ops/second | |
------- ------------ -------------- ------------- | |
trigger: [5,000 ] [0.0000400547981] [24,965.79803] | |
ZendBench\EventManager\SingleEventSingleSharedListener | |
Method Name Iterations Average Time Ops/second | |
------- ------------ -------------- ------------- | |
trigger: [5,000 ] [0.0000607269287] [16,467.15915] |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment