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.
Triage done by @simulacrum. Revision range: 1204400ab8da9830f6f77a5e40e7ad3ea459676a..f0c4da49983aa699f715caf681e3154b445fb60b
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
- Arithmetic mean of relevant improvements: -1.2%
- Largest improvement in instruction counts: -3.9% on
incr-patched: Job
builds of regex debug
Make TLS __getit
#[inline(always)] on non-Windows #94373
- Largest improvement in instruction counts: -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
- 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: -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
- Arithmetic mean of relevant improvements: -1.0%
- Largest improvement in instruction counts: -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
- Arithmetic mean of all relevant changes: -0.5%
- Largest improvement in instruction counts: -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
- 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: -1.0% on
full
builds of wf-projection-stress-65510 doc
- Largest regression in instruction counts: 0.9% on
incr-unchanged
builds of externs opt
Rollup of 9 pull requests #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: -14.4% on
incr-unchanged
builds of encoding check
- Largest regression in instruction counts: 1.1% on
incr-patched: println
builds of cargo opt
Use undef for (some) partially-uninit constants #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: -2.9% on
full
builds of ctfe-stress-4 opt
- Largest regression in instruction counts: 0.9% on
incr-unchanged
builds of externs opt
Caching the stable hash of Ty within itself #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: -9.6% on
incr-unchanged
builds of clap-rs check
- Largest regression in instruction counts: 1.3% on
incr-full
builds of deeply-nested check
Revert “Auto merge of #92419 - erikdesjardins:coldland, r=nagisa” #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: -3.8% on
full
builds of ripgrep opt
- Largest regression in instruction counts: 3.3% on
full
builds of syn opt
Rollup of 7 pull requests #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: -0.9% on
incr-unchanged
builds of externs debug
- Largest regression in instruction counts: 0.3% on
full
builds of await-call-tree doc
- Regression across multiple doc benchmarks.