Enable polonius alpha on nightly - #159343
Conversation
|
@bors try @rust-timer queue |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Enable polonius alpha on nightly
This comment has been minimized.
This comment has been minimized.
|
@craterbot check p=1 (priority bump b/c we want to get this enabled for testing) |
|
👌 Experiment ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more |
|
Finished benchmarking commit (24e1a22): comparison URL. Overall result: ❌✅ regressions and improvements - please read:Benchmarking means the PR may be perf-sensitive. It's automatically marked not fit for rolling up. Overriding is possible but disadvised: it risks changing compiler perf. Next, please: If you can, justify the regressions found in this try perf run in writing along with @bors rollup=never rustc-perf Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (primary 4.2%, secondary 3.2%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (primary 4.2%, secondary 4.6%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeThis perf run didn't have relevant results for this metric. Bootstrap: 487.651s -> 492.438s (0.98%) |
|
The way we enabled nightly-only for LLD was through a build configuration in bootstrap, I think that's a more explicit way, and will be easier to revert/modify on beta/stable, than to have that code in the compiler. If we did it like this PR does currently, then Polonius would be used by default if you use If we did it through bootstrap, then there would be an env variable or a cfg that would be set by bootstrap at rustc build time, which would select the default mode and hardcode it when we build rustc. |
|
@lqd said something similar to me. I'll take stab at it. As to whether |
|
🚧 Experiment ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more |
|
🎉 Experiment
Footnotes
|
|
@craterbot check p=2 crates=https://crater-reports.s3.amazonaws.com/pr-159343/retry-regressed-list.txt name=pr-159343-retry Let's recheck this to see how we're doing. Wondering if these are performance-related. |
|
👌 Experiment ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more |
0006999 to
3379bb5
Compare
|
🚧 Experiment ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more |
3379bb5 to
f7d91a7
Compare
|
🎉 Experiment
Footnotes
|
|
Two things:
|
4a43ea2 to
a9836a4
Compare
|
The job Click to see the possible cause of the failure (guessed by this bot)Important For more information how to resolve CI failures of this job, visit this link. |
|
Do we need a blog post before this is merged? |
I'll try to find time to take care of the above. r=me+jakub after rust-lang/blog.rust-lang.org#1900 lands |
| @@ -892,7 +894,8 @@ mod desc { | |||
| components: `crto`, `libc`, `unwind`, `linker`, `sanitizers`, `mingw`"; | |||
| pub(crate) const parse_linker_features: &str = | |||
| "a list of enabled (`+` prefix) and disabled (`-` prefix) features: `lld`"; | |||
| pub(crate) const parse_polonius: &str = "either no value or `legacy` (the default), or `next`"; | |||
| pub(crate) const parse_polonius: &str = | |||
| "either no value or one of `legacy` (the default), `off`, or `next`"; | |||
There was a problem hiding this comment.
(we may want to clarify this, it's the "default" if you don't provide a = value when providing the flag, but not a default option value of course)
|
@bors r=lqd,Kobzol
|
|
@bors try @rust-timer queue Just to check whether it still works in the distributed artifacts. |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Enable polonius alpha on nightly
This comment has been minimized.
This comment has been minimized.
|
Finished benchmarking commit (ecff631): comparison URL. Overall result: ❌✅ regressions and improvements - please read:Benchmarking means the PR may be perf-sensitive. It's automatically marked not fit for rolling up. Overriding is possible but disadvised: it risks changing compiler perf. Next, please: If you can, justify the regressions found in this try perf run in writing along with @bors rollup=never rustc-perf Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (primary 3.5%, secondary 1.6%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (primary 3.2%, secondary 2.7%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeThis perf run didn't have relevant results for this metric. Bootstrap: 489.577s -> 493.82s (0.87%) |
|
@bors p=1 Bump because it has been announced Bumping this slightly, because the blog post about Polonius being enabled on default already went out. |
|
⌛ Testing commit a9836a4 with merge 7608eb7... Workflow: https://github.com/rust-lang/rust/actions/runs/31034143130 |
Enable polonius alpha on nightly See [rust-lang/compiler-team#](rust-lang/compiler-team#1015) The first commit here adds an `-Zpolonius=nll` argument for tests and so people can disable alpha on nightly.

View all comments
See rust-lang/compiler-team#
The first commit here adds an
-Zpolonius=nllargument for tests and so people can disable alpha on nightly.