Avatar for the seddonym user
seddonym
grimp
Instrumentation
Wall Time
BlogDocsChangelog

Scanning optimization

#242
Comparing
scanning-optimization
(
a9d5381
) with
main
(
39c5c0a
)
CodSpeed Performance Gauge
+27%
Improvements
6
Regressions
0
Untouched
17
New
0
Dropped
0
Ignored
0

Benchmarks

Improved

test_build_django_uncached
tests/benchmarking/test_benchmarking.py::test_build_django_uncached
CodSpeed Performance Gauge
+27%
727.7 ms
571.5 ms
test_deep_layers_large_graph_kept
tests/benchmarking/test_benchmarking.py::TestFindIllegalDependenciesForLayers::test_deep_layers_large_graph_kept
CodSpeed Performance Gauge
+17%
20.1 ms
17.2 ms
test_no_chain
tests/benchmarking/test_benchmarking.py::TestFindShortestChain::test_no_chain
CodSpeed Performance Gauge
+13%
1.2 ms
1.1 ms
test_no_chains
tests/benchmarking/test_benchmarking.py::TestFindShortestChains::test_no_chains
CodSpeed Performance Gauge
+13%
1.2 ms
1.1 ms
test_deep_layers_large_graph_violated
tests/benchmarking/test_benchmarking.py::TestFindIllegalDependenciesForLayers::test_deep_layers_large_graph_violated
CodSpeed Performance Gauge
+11%
11.9 ms
10.7 ms
test_build_django_from_cache_a_few_misses[350]
tests/benchmarking/test_benchmarking.py::test_build_django_from_cache_a_few_misses[350]
CodSpeed Performance Gauge
+11%
742.2 ms
670.2 ms

Passed

test_chains_found
tests/benchmarking/test_benchmarking.py::TestFindShortestChains::test_chains_found
CodSpeed Performance Gauge
+6%
178.1 µs
167.6 µs
test_top_level_large_graph_kept
tests/benchmarking/test_benchmarking.py::TestFindIllegalDependenciesForLayers::test_top_level_large_graph_kept
CodSpeed Performance Gauge
+5%
49.3 ms
47.1 ms
test_top_level_large_graph_violated
tests/benchmarking/test_benchmarking.py::TestFindIllegalDependenciesForLayers::test_top_level_large_graph_violated
CodSpeed Performance Gauge
+2%
232.3 ms
227.7 ms
test_build_django_from_cache_a_few_misses[15]
tests/benchmarking/test_benchmarking.py::test_build_django_from_cache_a_few_misses[15]
CodSpeed Performance Gauge
+2%
159.7 ms
156.9 ms
test_chain_found
tests/benchmarking/test_benchmarking.py::TestFindShortestChain::test_chain_found
CodSpeed Performance Gauge
+1%
64.5 µs
63.5 µs
test_get_import_details
tests/benchmarking/test_benchmarking.py::test_get_import_details
CodSpeed Performance Gauge
+1%
257.2 µs
254.8 µs
test_find_downstream_modules
tests/benchmarking/test_benchmarking.py::test_find_downstream_modules
CodSpeed Performance Gauge
0%
171.4 µs
171 µs
test_chains_found_sparse_imports
tests/benchmarking/test_benchmarking.py::TestFindShortestChains::test_chains_found_sparse_imports
CodSpeed Performance Gauge
0%
372.2 µs
371.3 µs
test_find_matching_modules
tests/benchmarking/test_benchmarking.py::test_find_matching_modules
CodSpeed Performance Gauge
0%
9.1 ms
9 ms
test_build_django_from_cache_a_few_misses[2]
tests/benchmarking/test_benchmarking.py::test_build_django_from_cache_a_few_misses[2]
CodSpeed Performance Gauge
0%
136.6 ms
136.5 ms
test_find_matching_direct_imports
tests/benchmarking/test_benchmarking.py::test_find_matching_direct_imports
CodSpeed Performance Gauge
0%
35.6 ms
35.6 ms
test_find_descendants
tests/benchmarking/test_benchmarking.py::test_find_descendants
CodSpeed Performance Gauge
0%
35.6 ms
35.6 ms
test_copy_graph
tests/benchmarking/test_benchmarking.py::test_copy_graph
CodSpeed Performance Gauge
0%
56.5 ms
56.5 ms
test_modules_property_first_access
tests/benchmarking/test_benchmarking.py::test_modules_property_first_access
CodSpeed Performance Gauge
0%
33.9 ms
33.9 ms
test_find_upstream_modules
tests/benchmarking/test_benchmarking.py::test_find_upstream_modules
CodSpeed Performance Gauge
0%
3.4 ms
3.4 ms
test_build_django_from_cache_no_misses
tests/benchmarking/test_benchmarking.py::test_build_django_from_cache_no_misses
CodSpeed Performance Gauge
0%
129.3 ms
129.4 ms
test_modules_property_many_accesses
tests/benchmarking/test_benchmarking.py::test_modules_property_many_accesses
CodSpeed Performance Gauge
0%
34.4 ms
34.4 ms

Commits

Click on a commit to change the comparison range
Base
main
39c5c0a
+16.95%
Build a map of modules It was inefficient to scan through all the found packages each time.
395c656
7 days ago
by seddonym
+10.38%
Make regex static We were compiling this in each loop. On a large codebase, this contributed to ~10% of the time taken to build the graph.
a9d5381
10 hours ago
by seddonym
© 2025 CodSpeed Technology
Home Terms Privacy Docs