Short triage this week, as last week's was done later in the week than usual. As a result, a pretty quiet set of results.
Triage done by @simulacrum. Revision range: 698db856de0b67313ddcb96b6599598058489ea9..650991d62c3a2c80ba27009d06839adbb038bf5e
Summary:
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 0.7% | [0.2%, 5.0%] | 48 |
Regressions ❌ (secondary) | 0.7% | [0.1%, 1.9%] | 18 |
Improvements ✅ (primary) | -0.9% | [-3.3%, -0.2%] | 11 |
Improvements ✅ (secondary) | -0.5% | [-0.8%, -0.4%] | 4 |
All ❌✅ (primary) | 0.4% | [-3.3%, 5.0%] | 59 |
2 Regressions, 1 Improvements, 1 Mixed; 0 of them in rollups 43 artifact comparisons made in total
Lint overlapping ranges as a separate pass #116751 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 0.3% | [0.2%, 1.0%] | 19 |
Regressions ❌ (secondary) | 0.3% | [0.3%, 0.3%] | 3 |
Improvements ✅ (primary) | - | - | 0 |
Improvements ✅ (secondary) | - | - | 0 |
All ❌✅ (primary) | 0.3% | [0.2%, 1.0%] | 19 |
Slight regressions across multiple benchmarks. This is expected impact with no planned mitigation, likely small enough to be acceptable for the functionality here.
Eat close paren if capture_cfg to avoid unbalanced parens #116889 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 0.2% | [0.1%, 0.2%] | 6 |
Regressions ❌ (secondary) | 0.6% | [0.4%, 0.9%] | 9 |
Improvements ✅ (primary) | - | - | 0 |
Improvements ✅ (secondary) | - | - | 0 |
All ❌✅ (primary) | 0.2% | [0.1%, 0.2%] | 6 |
This is indeed a slight perf regression for benchmarks with large number of function parameters, like externs with 3000 function definitions.
(https://github.com/rust-lang/rust/pull/116889#issuecomment-1784115059)
However a possibly faster version will be worked on by the author. In the meantime the regression is limited to just a few benchmarks, mostly stress tests.
Only call mir_const_qualif
if absolutely necessary #117166 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | - | - | 0 |
Regressions ❌ (secondary) | - | - | 0 |
Improvements ✅ (primary) | -0.3% | [-0.5%, -0.2%] | 35 |
Improvements ✅ (secondary) | -0.4% | [-0.4%, -0.4%] | 3 |
All ❌✅ (primary) | -0.3% | [-0.5%, -0.2%] | 35 |
rustdoc: use JS to inline target type impl docs into alias #116471 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 1.8% | [0.3%, 5.0%] | 10 |
Regressions ❌ (secondary) | 1.0% | [0.2%, 1.9%] | 4 |
Improvements ✅ (primary) | -2.7% | [-3.4%, -1.5%] | 3 |
Improvements ✅ (secondary) | - | - | 0 |
All ❌✅ (primary) | 0.7% | [-3.4%, 5.0%] | 13 |
The perf regression was explained above; it's very small, rustdoc-only, and is more than balanced by the large reductions in generated doc size.
https://github.com/rust-lang/rust/pull/116471#issuecomment-1784228010