Skip to content

Test out parallel frontend via crater#146237

Open
zetanumbers wants to merge 1 commit intorust-lang:mainfrom
zetanumbers:parallel-frontend-by-default
Open

Test out parallel frontend via crater#146237
zetanumbers wants to merge 1 commit intorust-lang:mainfrom
zetanumbers:parallel-frontend-by-default

Conversation

@zetanumbers
Copy link
Contributor

@zetanumbers zetanumbers commented Sep 5, 2025

I would like to help push progress on parallel compiler. I think it will be necessary at some point to test compiler in its multi-threaded mode (we already "have" parallel compiler but it is single-threaded by default) via crater. It would allow us to diagnose new issues, measure impact on the ecosystem and estimate amount of remaining work.

I have modified compiler to use "num_cpus" number of 8 threads by default. But I am not sure if there's better value for the cloud environment, so please tell if there is one. I am also not aware of any other nuances of cloud computing, but @Mark-Simulacrum on zulip have confirmed it should be fine.

I believe build-and-test crater mode should provide us with more useful information than the other modes, but if necessary you can scale it down to just build only.

Related zulip thread: #t-compiler/parallel-rustc > Run crater with `-Zthreads=$NUM_CPUS` set

EDIT: Switched from num_cpus to 8 threads

@rustbot
Copy link
Collaborator

rustbot commented Sep 5, 2025

r? @petrochenkov

rustbot has assigned @petrochenkov.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Sep 5, 2025
@lqd
Copy link
Member

lqd commented Sep 5, 2025

@bors try

rust-bors bot added a commit that referenced this pull request Sep 5, 2025
…try>

Test out parallel frontend via crater
@rust-bors

This comment has been minimized.

@rust-log-analyzer

This comment has been minimized.

@petrochenkov petrochenkov added S-waiting-on-crater Status: Waiting on a crater run to be completed. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Sep 5, 2025
@bjorn3
Copy link
Member

bjorn3 commented Sep 5, 2025

@bors try spurious failure

@rust-bors
Copy link
Contributor

rust-bors bot commented Sep 5, 2025

Unknown argument "spurious". Run @bors2 help to see available commands.

@bjorn3
Copy link
Member

bjorn3 commented Sep 5, 2025

Never mind, that was PR CI, not the try job.

@rust-bors
Copy link
Contributor

rust-bors bot commented Sep 5, 2025

☀️ Try build successful (CI)
Build commit: d79d87d (d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6, parent: ad85bc524b1ad696e42061ad8338d382dffbdbe5)

@petrochenkov
Copy link
Contributor

@craterbot build-and-test

@craterbot
Copy link
Collaborator

🚨 Error: failed to parse the command

🆘 If you have any trouble with Crater please ask in t-infra on Zulip
ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@petrochenkov
Copy link
Contributor

@craterbot run mode=build-and-test

@craterbot
Copy link
Collaborator

👌 Experiment pr-146237 created and queued.
🤖 Automatically detected try build d79d87d
🔍 You can check out the queue and this experiment's details.

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot
Copy link
Collaborator

🚧 Experiment pr-146237 is now running

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot
Copy link
Collaborator

🎉 Experiment pr-146237 is completed!
📊 182 regressed and 154 fixed (694485 total)
📊 115635 spurious results on the retry-regessed-list.txt, consider a retry1 if this is a significant amount.
📰 Open the summary report.

⚠️ If you notice any spurious failure please add them to the denylist!
ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

Footnotes

  1. re-run the experiment with crates=https://crater-reports.s3.amazonaws.com/pr-146237/retry-regressed-list.txt

@zetanumbers
Copy link
Contributor Author

zetanumbers commented Sep 18, 2025

OOM build failures increasing from 4.5% to 13.5% is concerning if we will have more that one thread enabled by default one day. I hypothesized in the zulip thread it comes from increased RAM consumption during parallel compilation. I guess if we set threads to num_cpus (which is our eventual goal) this problem would become less noticeable. So I have reverted to this behavior to see what happens now.

@craterbot run mode=build-only crates=https://crater-reports.s3.amazonaws.com/pr-146237/retry-regressed-list.txt

@craterbot
Copy link
Collaborator

👌 Experiment pr-146237-1 created and queued.
🤖 Automatically detected try build d79d87d
⚠️ Try build based on commit 34fd685, but latest commit is 77f6c01. Did you forget to make a new try build?
🔍 You can check out the queue and this experiment's details.

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot craterbot added S-waiting-on-crater Status: Waiting on a crater run to be completed. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Sep 23, 2025
@petrochenkov
Copy link
Contributor

@craterbot p=1

@craterbot
Copy link
Collaborator

📝 Configuration of the pr-146237-1 experiment changed.

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot
Copy link
Collaborator

🚧 Experiment pr-146237-1 is now running

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot
Copy link
Collaborator

🎉 Experiment pr-146237-1 is completed!
📊 5 regressed and 3 fixed (115451 total)
📊 30677 spurious results on the retry-regessed-list.txt, consider a retry1 if this is a significant amount.
📰 Open the summary report.

⚠️ If you notice any spurious failure please add them to the denylist!
ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

Footnotes

  1. re-run the experiment with crates=https://crater-reports.s3.amazonaws.com/pr-146237-1/retry-regressed-list.txt

@craterbot craterbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-crater Status: Waiting on a crater run to be completed. labels Sep 28, 2025
@ywxt
Copy link
Contributor

ywxt commented Sep 28, 2025

⚠️ Try build based on commit 34fd685, but latest commit is 77f6c01. Did you forget to make a new try build?

Did we forget to try build or not?

@SparrowLii
Copy link
Member

@bors try

@rust-bors

This comment has been minimized.

rust-bors bot added a commit that referenced this pull request Sep 28, 2025
…try>

Test out parallel frontend via crater
@rust-bors
Copy link
Contributor

rust-bors bot commented Sep 28, 2025

☀️ Try build successful (CI)
Build commit: 4987e9d (4987e9d4227139400384ab59296ffee3b0fb1183, parent: c7f6aa2869acdbf014d094c6e427e554e160b6db)

@SparrowLii
Copy link
Member

@craterbot
Copy link
Collaborator

👌 Experiment pr-146237-2 created and queued.
🤖 Automatically detected try build 4987e9d
🔍 You can check out the queue and this experiment's details.

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot craterbot added S-waiting-on-crater Status: Waiting on a crater run to be completed. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Sep 29, 2025
@SparrowLii
Copy link
Member

@craterbot p=1

@craterbot
Copy link
Collaborator

📝 Configuration of the pr-146237-2 experiment changed.

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot
Copy link
Collaborator

🚧 Experiment pr-146237-2 is now running

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot
Copy link
Collaborator

🎉 Experiment pr-146237-2 is completed!
📊 3 regressed and 1 fixed (115430 total)
📊 32026 spurious results on the retry-regessed-list.txt, consider a retry1 if this is a significant amount.
📰 Open the summary report.

⚠️ If you notice any spurious failure please add them to the denylist!
ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

Footnotes

  1. re-run the experiment with crates=https://crater-reports.s3.amazonaws.com/pr-146237-2/retry-regressed-list.txt

@craterbot craterbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-crater Status: Waiting on a crater run to be completed. labels Sep 30, 2025
@petrochenkov petrochenkov added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Sep 30, 2025
@SpriteOvO
Copy link
Member

Hi, ping from triage team. This PR has been inactive for a while. What's the status of this PR now? Thanks.

@zetanumbers
Copy link
Contributor Author

zetanumbers commented Feb 15, 2026

Hi, ping from triage team. This PR has been inactive for a while. What's the status of this PR now? Thanks.

I plan to rerun crater to see if I am right about zero regressions after #149849 is merged and other small stuff is done. See #t-compiler/parallel-rustc > Steps to enable/stabilize multi-threaded rustc front-end @ 💬

@Dylan-DPC Dylan-DPC added S-blocked Status: Blocked on something else such as an RFC or other implementation work. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Feb 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

S-blocked Status: Blocked on something else such as an RFC or other implementation work. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.