-
Notifications
You must be signed in to change notification settings - Fork 81
Benchmarks
Yohan edited this page May 5, 2017
·
1 revision
The source is available in Hypodermic.Tests/PerformanceTests.cpp
Run for 100000 iterations with 10000 cycles of warm up on Windows 10, Intel Core i7-4790 @ 3.60GHz, and 32 GB of RAM.
Unless stated otherwise, time is given in µs.
std::make_shared | resolve not registered transient | resolve registered transient | resolve registered single instance | resolve registered instance | |
---|---|---|---|---|---|
Overall (ms) | 10 | 71 | 70 | 54 | 55 |
Average | 0.07 | 0.68 | 0.67 | 0.51 | 0.52 |
Min | 0 | 0.57 | 0.57 | 0.28 | 0.28 |
Max | 43 | 149 | 267 | 87 | 268 |
99.999% | 40 | 67 | 67 | 70 | 115 |
99.99% | 22 | 41 | 30 | 24 | 24 |
99.9% | 1 | 9 | 7 | 2 | 4 |
99% | 0.28 | 0.86 | 0.86 | 0.57 | 0.57 |
95% | 0.28 | 0.86 | 0.86 | 0.57 | 0.57 |
50% | 0 | 0.57 | 0.57 | 0.57 | 0.57 |
std::make_shared | resolve not registered transient | resolve registered transient | resolve with registered single instance dependency | resolve with registered instance dependency | |
---|---|---|---|---|---|
Overall (ms) | 18 | 192 | 190 | 177 | 170 |
Average | 0.1 | 1 | 1 | 1 | 1 |
Min | 0 | 1 | 1 | 1 | 1 |
Max | 150 | 314 | 513 | 160 | 92 |
99.999% | 86 | 181 | 139 | 104 | 85 |
99.99% | 27 | 75 | 53 | 47 | 55 |
99.9% | 8 | 23 | 23 | 21 | 21 |
99% | 0.3 | 2 | 2 | 2 | 2 |
95% | 0.3 | 1 | 1 | 1 | 1 |
50% | 0 | 1 | 1 | 1 | 1 |