Avatar for the conda user
conda
conda-build
BlogDocsChangelog

reduce cost of large variant matrix

#5392Merged
Comparing
minrk:reduce_variants
(
311e48b
) with
main
(
433f048
)
CodSpeed Performance Gauge
×2.6
Improvements
1
Untouched
3

Benchmarks

Improved

test_render_recipe
tests/test_render.py::test_render_recipe
CodSpeed Performance Gauge
×2.6
64.7 s25.1 s

Passed

test_pin_subpackage_benchmark
tests/test_api_render.py::test_pin_subpackage_benchmark
CodSpeed Performance Gauge
0%
7.4 s7.3 s
test_which_package_battery
tests/test_inspect_pkg.py::test_which_package_battery
CodSpeed Performance Gauge
0%
834.2 ms832.9 ms
test_select_lines_battery
tests/test_metadata.py::test_select_lines_battery
CodSpeed Performance Gauge
0%
22.8 ms22.8 ms

Commits

Click on a commit to change the comparison range
Base
main
433f048
+19.76%
discard unused variants before copying metadata when variant matrix is large and mostly unused (as in conda-forge), the length of input_variants may be several thousand when only a few are actually used. This causes `get_loop_vars` and `metadata.copy()` to become very expensive.
9f5ef06
1 year ago
by minrk
+0.5%
try reducing with all used vars instead of loop vars should reduce less
568aed3
1 year ago
by minrk
-20.17%
remove redundant deepcopy of config.variant config.copy already copies this, no need to do it twice in metadata.copy
d1ba529
1 year ago
by minrk
-0.09%
Merge branch 'main' into reduce_variants
5007189
1 year ago
by beckermr
+0.03%
add config.copy_variants method to avoid calling pickle in too many places
5f48708
1 year ago
by minrk
+0.17%
Merge branch 'main' into reduce_variants
0df82cc
1 year ago
by beckermr
-0.08%
Update news/5392-variant-copy
644baaf
1 year ago
by beeankha
×2.6
Add benchmark test for `render_recipe` (#5490)
311e48b
1 year ago
by kenodegard
© 2025 CodSpeed Technology
Home Terms Privacy Docs