Skip to content

Add triage for this week #1188

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Mar 2, 2022
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
99 changes: 99 additions & 0 deletions triage/2022-03-01.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
# 2022-03-01 Triage Log

A relatively noisy week in performance measurements, particularly on the
`externs` incremental benchmark. Based on the timing of the first noise, this
seems to be due to [#93839], which makes me suspect this is related to PGO or
inlining decisions of some kind. [#94373] might help.

Overall a relatively unchanged to slightly good week, with no outright regressions and most
changes relatively small.

[#93839]: https://github.com/rust-lang/rust/pull/93839
[#94373]: https://github.com/rust-lang/rust/pull/94373

Triage done by **@simulacrum**.
Revision range: [1204400ab8da9830f6f77a5e40e7ad3ea459676a..f0c4da49983aa699f715caf681e3154b445fb60b](https://perf.rust-lang.org/?start=1204400ab8da9830f6f77a5e40e7ad3ea459676a&end=f0c4da49983aa699f715caf681e3154b445fb60b&absolute=false&stat=instructions%3Au)

0 Regressions, 5 Improvements, 6 Mixed; 2 of them in rollups
43 comparisons made in total

#### Regressions

- No regressions this week.

#### Improvements

At opt-level=0, apply only ABI-affecting attributes to functions [#94127](https://github.com/rust-lang/rust/issues/94127)
- Arithmetic mean of relevant improvements: -1.2%
- Largest improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=d5a9bc947617babe3833458f3e09f3d6d5e3d736&end=8128e910c0b4046afd0a1ef818b60082903bae03&stat=instructions:u): -3.9% on `incr-patched: Job` builds of `regex debug`

Make TLS `__getit` #[inline(always)] on non-Windows [#94373](https://github.com/rust-lang/rust/issues/94373)
- Largest improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=761e8884858759b21f3374ad610494e68c087a38&end=035a717ee8bf548868fb50b5c7ca562fc4a657a7&stat=instructions:u): -3.0% on `incr-patched: b9b3e592dd cherry picked` builds of `style-servo debug`
- Tries to tackle some of the noise we've been seeing in the `externs`
benchmarks.

Avoid query cache sharding code in single-threaded mode [#94084](https://github.com/rust-lang/rust/issues/94084)
- Arithmetic mean of relevant regressions: 1.1%
- Arithmetic mean of relevant improvements: -0.8%
- Arithmetic mean of all relevant changes: -0.6%
- Largest improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=bab4c13f64b4197abc1a361796be9940ed5b3904&end=3b1fe7e7c95e14dd8a420edf2f8a160c70211e04&stat=instructions:u): -2.3% on `full` builds of `keccak check`
- Primarily focused on bootstrap time improvement, rather than perf improvements
to benchmarks, but helps slightly with both.

Apply noundef attribute to all scalar types which do not permit raw init [#94157](https://github.com/rust-lang/rust/issues/94157)
- Arithmetic mean of relevant improvements: -1.0%
- Largest improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=6a705566166debf5eff88c57140df607fa409aaa&end=9fbff89354ba7a4ec2d1191a3f405cbe408370f6&stat=instructions:u): -1.7% on `incr-full` builds of `coercions debug`
- This may also be noise; the `externs` and `coercions` benchmark are both
typically relatively noisy.

rustc_errors: let `DiagnosticBuilder::emit` return a "guarantee of emission". [#93368](https://github.com/rust-lang/rust/issues/93368)
- Arithmetic mean of all relevant changes: -0.5%
- Largest improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=4e82f35492ea5c78e19609bf4468f0a686d9a756&end=d4de1f230ca30b7ce08fbf453daebf8b2e7ffcc9&stat=instructions:u): -0.5% on `full` builds of `deeply-nested-async debug`
- Improvements in bootstrap time, but not a significant change in compile times
otherwise.

#### Mixed

Back more metadata using per-query tables [#94129](https://github.com/rust-lang/rust/issues/94129)
- Arithmetic mean of relevant regressions: 0.8%
- Arithmetic mean of relevant improvements: -0.6%
- Arithmetic mean of all relevant changes: -0.5%
- Largest improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=1204400ab8da9830f6f77a5e40e7ad3ea459676a&end=7ccfe2ff1d59666dc0188dfd5847304fec257565&stat=instructions:u): -1.0% on `full` builds of `wf-projection-stress-65510 doc`
- Largest regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=1204400ab8da9830f6f77a5e40e7ad3ea459676a&end=7ccfe2ff1d59666dc0188dfd5847304fec257565&stat=instructions:u): 0.9% on `incr-unchanged` builds of `externs opt`


Rollup of 9 pull requests [#94333](https://github.com/rust-lang/rust/issues/94333)
- Arithmetic mean of relevant regressions: 0.8%
- Arithmetic mean of relevant improvements: -5.9%
- Arithmetic mean of all relevant changes: -3.3%
- Largest improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=4b043faba34ccc053a4d0110634c323f6c03765e&end=4e82f35492ea5c78e19609bf4468f0a686d9a756&stat=instructions:u): -14.4% on `incr-unchanged` builds of `encoding check`
- Largest regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=4b043faba34ccc053a4d0110634c323f6c03765e&end=4e82f35492ea5c78e19609bf4468f0a686d9a756&stat=instructions:u): 1.1% on `incr-patched: println` builds of `cargo opt`

Use undef for (some) partially-uninit constants [#94130](https://github.com/rust-lang/rust/issues/94130)
- Arithmetic mean of relevant regressions: 0.7%
- Arithmetic mean of relevant improvements: -1.9%
- Arithmetic mean of all relevant changes: -0.1%
- Largest improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=f6a79936da30702b1c717769a2d12dffbad6d30a&end=ece55d416e65256e4da274988651c20e5d5cb4ea&stat=instructions:u): -2.9% on `full` builds of `ctfe-stress-4 opt`
- Largest regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=f6a79936da30702b1c717769a2d12dffbad6d30a&end=ece55d416e65256e4da274988651c20e5d5cb4ea&stat=instructions:u): 0.9% on `incr-unchanged` builds of `externs opt`

Caching the stable hash of Ty within itself [#94299](https://github.com/rust-lang/rust/issues/94299)
- Arithmetic mean of relevant regressions: 0.9%
- Arithmetic mean of relevant improvements: -1.2%
- Arithmetic mean of all relevant changes: -1.0%
- Largest improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=4ce3749235fc31d15ebd444b038a9877e8c700d7&end=8d6f527530f4ba974d922269267fe89050188789&stat=instructions:u): -9.6% on `incr-unchanged` builds of `clap-rs check`
- Largest regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=4ce3749235fc31d15ebd444b038a9877e8c700d7&end=8d6f527530f4ba974d922269267fe89050188789&stat=instructions:u): 1.3% on `incr-full` builds of `deeply-nested check`

Revert "Auto merge of #92419 - erikdesjardins:coldland, r=nagisa" [#94402](https://github.com/rust-lang/rust/issues/94402)
- Arithmetic mean of relevant regressions: 0.7%
- Arithmetic mean of relevant improvements: -1.7%
- Arithmetic mean of all relevant changes: 0.5%
- Largest improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=6e5a6ffb14fc47051b0a23410c681ad6e4af045f&end=4a56cbec59903a830a5fc06c5c81956de4199584&stat=instructions:u): -3.8% on `full` builds of `ripgrep opt`
- Largest regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=6e5a6ffb14fc47051b0a23410c681ad6e4af045f&end=4a56cbec59903a830a5fc06c5c81956de4199584&stat=instructions:u): 3.3% on `full` builds of `syn opt`

Rollup of 7 pull requests [#94469](https://github.com/rust-lang/rust/issues/94469)
- Arithmetic mean of relevant regressions: 0.3%
- Arithmetic mean of relevant improvements: -0.8%
- Arithmetic mean of all relevant changes: 0.0%
- Largest improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=8d6f527530f4ba974d922269267fe89050188789&end=6343edfa11c80ffed02de7e059178d4c1637ecdb&stat=instructions:u): -0.9% on `incr-unchanged` builds of `externs debug`
- Largest regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=8d6f527530f4ba974d922269267fe89050188789&end=6343edfa11c80ffed02de7e059178d4c1637ecdb&stat=instructions:u): 0.3% on `full` builds of `await-call-tree doc`
- Regression across multiple doc benchmarks.