Skip to content

builder: support cpu-core assignment for builders#3285

Merged
syphar merged 2 commits intorust-lang:mainfrom
syphar:build-cores
Apr 8, 2026
Merged

builder: support cpu-core assignment for builders#3285
syphar merged 2 commits intorust-lang:mainfrom
syphar:build-cores

Conversation

@syphar
Copy link
Copy Markdown
Member

@syphar syphar commented Apr 8, 2026

Using rust-lang/rustwide#120.

My current assumption is that the quota-based cpu-limit makes our builds slower than they should be. This new feature allows us to assign the builder so specific cores. When we assign cores, docker won't stop and build because of the quota on one of the "virtual" cores. The rest should be handled by the OS scheduler.

Caveat:
webserver & watcher are not limited to the other (= non-builder) cores. I assume that the OS scheduler will put them onto more free cores when the build-cores are full. Watcher has higher CPU usage when it calculates the index-diff. Webserver has relatively high cpu usage (for a webserver) due to rustdoc html rewriting and quite a bit of compression / decompression.

deployment

I want to keep both options in the beginning, so I can just switch one of the builders and see if anything is odd, before changing the rest.

NOTE

This PR includes a new rustwide release, which includes an internal change into how we run containers. I don't think anything will break, but if things feel odd, we should remember that this was done too.

@syphar syphar self-assigned this Apr 8, 2026
@github-actions github-actions bot added the S-waiting-on-review Status: This pull request has been implemented and needs to be reviewed label Apr 8, 2026
@syphar syphar marked this pull request as ready for review April 8, 2026 12:17
@syphar syphar requested a review from a team as a code owner April 8, 2026 12:17
@GuillaumeGomez
Copy link
Copy Markdown
Member

Looks all good to me, thanks!

@syphar syphar merged commit 7dbac6c into rust-lang:main Apr 8, 2026
13 checks passed
@syphar syphar deleted the build-cores branch April 8, 2026 14:09
@github-actions github-actions bot added S-waiting-on-deploy This PR is ready to be merged, but is waiting for an admin to have time to deploy it and removed S-waiting-on-review Status: This pull request has been implemented and needs to be reviewed labels Apr 8, 2026
@syphar syphar removed the S-waiting-on-deploy This PR is ready to be merged, but is waiting for an admin to have time to deploy it label Apr 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants