Repository navigation
Flatten wiring plan parameter classification - #745
Merged
Merged
Conversation
There was a problem hiding this comment.
Benchmark
Details
| Benchmark suite | Current: ff6412f | Previous: 4c426c4 | Ratio |
|---|---|---|---|
benchmarks/test_guard_by_type.py::test_g16_resolve_by_type |
3504477.5307612284 iter/sec (stddev: 2.897910432989885e-8) |
4906511.573807865 iter/sec (stddev: 6.4200098481194375e-9) |
1.40 |
benchmarks/test_guard_by_type.py::test_g17_resolve_by_type_large_registry |
3209664.427979007 iter/sec (stddev: 2.806134563416421e-8) |
4860800.05367101 iter/sec (stddev: 6.8731454660227405e-9) |
1.51 |
benchmarks/test_guard_cold.py::test_g8_cold_first_resolve |
14376.380113531559 iter/sec (stddev: 0.00005502946675914798) |
22086.568943179565 iter/sec (stddev: 0.00004081464955005821) |
1.54 |
benchmarks/test_guard_cold.py::test_g8b_cold_first_resolve_cached |
11587.286800463757 iter/sec (stddev: 0.0001601683332576677) |
18011.045315036405 iter/sec (stddev: 0.00015762508358782543) |
1.55 |
benchmarks/test_guard_concurrency.py::test_g14_concurrent_cached_hit[1] |
443.81139584498743 iter/sec (stddev: 0.00008552863671842631) |
655.9112569326339 iter/sec (stddev: 0.00004303206728154271) |
1.48 |
benchmarks/test_guard_concurrency.py::test_g14_concurrent_cached_hit[2] |
435.9223388699755 iter/sec (stddev: 0.00006775806240416723) |
619.1593333145153 iter/sec (stddev: 0.00013507831231257298) |
1.42 |
benchmarks/test_guard_concurrency.py::test_g14_concurrent_cached_hit[4] |
412.5354713492651 iter/sec (stddev: 0.00009821953697030827) |
589.33723516232 iter/sec (stddev: 0.00012150468652764061) |
1.43 |
benchmarks/test_guard_concurrency.py::test_g15_concurrent_first_resolve[1] |
13902.972084656576 iter/sec (stddev: 0.000010974772887895687) |
19615.820878468607 iter/sec (stddev: 0.000006646631833215622) |
1.41 |
benchmarks/test_guard_concurrency.py::test_g15_concurrent_first_resolve[2] |
6844.956097297299 iter/sec (stddev: 0.000023617715447061794) |
9919.100641750323 iter/sec (stddev: 0.000014153065059785465) |
1.45 |
benchmarks/test_guard_concurrency.py::test_g15_concurrent_first_resolve[4] |
3573.3414789629774 iter/sec (stddev: 0.00003552463476114282) |
5068.704815419585 iter/sec (stddev: 0.000028187297582806564) |
1.42 |
benchmarks/test_guard_concurrency.py::test_g15b_concurrent_first_resolve_sibling_children[1] |
10351.65075188112 iter/sec (stddev: 0.000013416903930812703) |
15080.418215129504 iter/sec (stddev: 0.000009369889214681432) |
1.46 |
benchmarks/test_guard_concurrency.py::test_g15b_concurrent_first_resolve_sibling_children[2] |
4504.532235109373 iter/sec (stddev: 0.000025861108619586038) |
6725.630644162258 iter/sec (stddev: 0.00001430595186217296) |
1.49 |
benchmarks/test_guard_concurrency.py::test_g15b_concurrent_first_resolve_sibling_children[4] |
2090.5752893857225 iter/sec (stddev: 0.000055347190306199405) |
3046.128204780117 iter/sec (stddev: 0.000030180654796270295) |
1.46 |
benchmarks/test_guard_concurrency.py::test_g15c_worker_pool_floor_control[1] |
42023.85484134644 iter/sec (stddev: 0.00000394299716767674) |
52294.44036039192 iter/sec (stddev: 0.000002889537201905908) |
1.24 |
benchmarks/test_guard_concurrency.py::test_g15c_worker_pool_floor_control[2] |
13576.445229566669 iter/sec (stddev: 0.00001577230261110505) |
22126.023190527754 iter/sec (stddev: 0.000007856849293039747) |
1.63 |
benchmarks/test_guard_concurrency.py::test_g15c_worker_pool_floor_control[4] |
6390.265665704345 iter/sec (stddev: 0.00002645350247274608) |
8479.636506209441 iter/sec (stddev: 0.000022230087325571974) |
1.33 |
benchmarks/test_guard_lifecycle.py::test_g6_build_child_container |
1556485.4605007116 iter/sec (stddev: 3.7003709642025704e-8) |
2083795.1327213766 iter/sec (stddev: 2.4035876682563065e-8) |
1.34 |
benchmarks/test_guard_lifecycle.py::test_g6b_build_child_container_auto_scope |
1637123.3434538085 iter/sec (stddev: 2.1952847453057574e-8) |
2248794.4774956526 iter/sec (stddev: 2.4260438569854244e-8) |
1.37 |
benchmarks/test_guard_lifecycle.py::test_g7_request_lifecycle_batch |
3186.202411647754 iter/sec (stddev: 0.000019423374527848954) |
4451.976284299646 iter/sec (stddev: 0.000023717427929595866) |
1.40 |
benchmarks/test_guard_lifecycle.py::test_g7c_event_loop_floor_control |
56666.74717548948 iter/sec (stddev: 0.000002172827293093168) |
75970.29070626643 iter/sec (stddev: 0.0000013238116630361499) |
1.34 |
benchmarks/test_guard_lifecycle.py::test_g7b_request_cycle_sync |
410747.13301608426 iter/sec (stddev: 8.459133197199437e-8) |
592030.7510225712 iter/sec (stddev: 6.32186990155512e-8) |
1.44 |
benchmarks/test_guard_lifecycle.py::test_g13_teardown_at_scale |
61521.12403065368 iter/sec (stddev: 0.0000015899612122318784) |
93636.70247535929 iter/sec (stddev: 9.300497190654961e-7) |
1.52 |
benchmarks/test_guard_lifecycle.py::test_g13b_teardown_at_scale_async_no_finalizers |
567.1028788414687 iter/sec (stddev: 0.0011264377890594422) |
782.6942643451193 iter/sec (stddev: 0.0017262034082747536) |
1.38 |
benchmarks/test_guard_resolve.py::test_g1_transient_resolve |
1973756.7331048115 iter/sec (stddev: 2.8933613525367724e-8) |
2904364.9264678857 iter/sec (stddev: 2.8416828371745787e-8) |
1.47 |
benchmarks/test_guard_resolve.py::test_g2_cached_resolve |
2921737.122310314 iter/sec (stddev: 2.427141297352613e-8) |
4759778.500871154 iter/sec (stddev: 7.047147459047135e-9) |
1.63 |
benchmarks/test_guard_resolve.py::test_g3_deep_chain |
698112.1389743412 iter/sec (stddev: 1.4189155783644053e-7) |
1119409.8874063645 iter/sec (stddev: 3.842094782386879e-8) |
1.60 |
benchmarks/test_guard_resolve.py::test_g4_wide_resolve |
372009.5408541656 iter/sec (stddev: 6.317031967305872e-7) |
583157.926718996 iter/sec (stddev: 3.5137586695228595e-7) |
1.57 |
benchmarks/test_guard_resolve.py::test_g5_cross_scope |
1743112.9932467581 iter/sec (stddev: 2.8778647580126605e-8) |
2636774.4338187175 iter/sec (stddev: 1.9460662605202595e-8) |
1.51 |
benchmarks/test_guard_resolve.py::test_g9_context_resolve |
1357080.9379021828 iter/sec (stddev: 1.480120891705176e-7) |
2012591.9829977355 iter/sec (stddev: 1.209077287083069e-7) |
1.48 |
benchmarks/test_guard_resolve.py::test_g12_override_active_resolve |
755415.013110687 iter/sec (stddev: 4.469948714983501e-8) |
1115600.4111203447 iter/sec (stddev: 2.9124085617049308e-8) |
1.48 |
benchmarks/test_guard_resolve.py::test_g18_alias_hop |
3286817.3087355946 iter/sec (stddev: 3.799698808651922e-8) |
4755067.4277915 iter/sec (stddev: 5.644079151470061e-9) |
1.45 |
benchmarks/test_guard_validate.py::test_g10_validate_deep_chain |
39933.65316377447 iter/sec (stddev: 0.00000394413244566453) |
63211.34625065297 iter/sec (stddev: 0.0000017296541036264836) |
1.58 |
benchmarks/test_guard_validate.py::test_g11_validate_wide |
24565.623480647955 iter/sec (stddev: 0.000004422412851335357) |
37522.30935799307 iter/sec (stddev: 0.0000020818740433960623) |
1.53 |
benchmarks/test_guard_validate.py::test_g11b_validate_shared_alias_chain |
2589.986193241391 iter/sec (stddev: 0.000029898739686844745) |
3792.491314458379 iter/sec (stddev: 0.000012832995314043191) |
1.46 |
This comment was automatically generated by workflow using github-action-benchmark.
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Use early exits for resolved providers and defaulted parameters in
WiringPlan.build()so the nullable and unwireable cases are easier to follow.Wide validation was slightly faster in both paired runs. Cold first resolve moved less than 1% in opposite directions.
All 1,128 tests and
just lintpassed.