Skip to content

Perf: lazy init the bootstrap scheduler#23513

Merged
tobni merged 2 commits into
pantsbuild:mainfrom
tobni:perf/lazy-bootstrap-scheduler
Jul 10, 2026
Merged

Perf: lazy init the bootstrap scheduler#23513
tobni merged 2 commits into
pantsbuild:mainfrom
tobni:perf/lazy-bootstrap-scheduler

Conversation

@tobni

@tobni tobni commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Shaves of about 0.1s startup time. The second commit is

  1. Preparatory work for when source plugins are imported in parallell, regular sequential import leaves perf on the table
  2. If the python backend is not used, in which case importing pex-rules is wasted work. Not sure if those users exists, though.

I intend to introduce paralllel backend imports after #23477.

I do not think this conflicts in spirit with #21991. It does conflict in direction with a comment here: #11568, however I find #10360 to have resolved/obsoleted the motivation for the bootstrap scheduler there as well.

tobni added 2 commits July 9, 2026 14:33
The bootstrap scheduler only pex-resolves distribution plugins. If there
are none, it is wasted effort.
@tobni
tobni requested a review from tdyas July 9, 2026 12:45
@tobni tobni added category:internal CI, fixes for not-yet-released features, etc. category:performance release-notes:not-required [CI] PR doesn't require mention in release notes labels Jul 9, 2026
@tobni
tobni merged commit d1bd805 into pantsbuild:main Jul 10, 2026
25 checks passed
@tobni
tobni deleted the perf/lazy-bootstrap-scheduler branch July 10, 2026 17:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

category:internal CI, fixes for not-yet-released features, etc. category:performance release-notes:not-required [CI] PR doesn't require mention in release notes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants