Some noisy benchmarks impeded performance review this week. There was a notable improvement to a broad range of primary benchmarks, first from PR #108440, which revised the encodable proc macro to handle the discriminant separately from its fields, and second from PR #108375, which inlined a number of methods that had only a single caller. Both of these PR's were authored by the same contributor; many thanks Zoxc!
Triage done by @pnkfelix. Revision range: 3fee48c1..31f858d9
Summary:
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 0.6% | [0.4%, 1.5%] | 16 |
Regressions ❌ (secondary) | 0.6% | [0.3%, 0.9%] | 18 |
Improvements ✅ (primary) | -0.8% | [-17.1%, -0.3%] | 112 |
Improvements ✅ (secondary) | -0.7% | [-1.8%, -0.1%] | 50 |
All ❌✅ (primary) | -0.6% | [-17.1%, 1.5%] | 128 |
5 Regressions, 4 Improvements, 6 Mixed; 6 of them in rollups 39 artifact comparisons made in total
errors: generate typed identifiers in each crate #103042 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 1.1% | [1.0%, 1.2%] | 2 |
Regressions ❌ (secondary) | 2.2% | [2.0%, 2.6%] | 6 |
Improvements ✅ (primary) | - | - | 0 |
Improvements ✅ (secondary) | - | - | 0 |
All ❌✅ (primary) | 1.1% | [1.0%, 1.2%] | 2 |
Rollup of 10 pull requests #108421 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 0.7% | [0.3%, 1.3%] | 4 |
Regressions ❌ (secondary) | 2.2% | [2.0%, 2.6%] | 6 |
Improvements ✅ (primary) | - | - | 0 |
Improvements ✅ (secondary) | - | - | 0 |
All ❌✅ (primary) | 0.7% | [0.3%, 1.3%] | 4 |
Print a backtrace when query forcing fails. #91742 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 0.3% | [0.2%, 0.7%] | 65 |
Regressions ❌ (secondary) | 0.5% | [0.2%, 2.3%] | 14 |
Improvements ✅ (primary) | - | - | 0 |
Improvements ✅ (secondary) | - | - | 0 |
All ❌✅ (primary) | 0.3% | [0.2%, 0.7%] | 65 |
Rollup of 9 pull requests #108488 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 1.4% | [0.8%, 2.0%] | 2 |
Regressions ❌ (secondary) | - | - | 0 |
Improvements ✅ (primary) | - | - | 0 |
Improvements ✅ (secondary) | - | - | 0 |
All ❌✅ (primary) | 1.4% | [0.8%, 2.0%] | 2 |
MIR-Validate StorageLive. #108175 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 0.6% | [0.6%, 0.7%] | 3 |
Regressions ❌ (secondary) | 0.3% | [0.3%, 0.5%] | 4 |
Improvements ✅ (primary) | - | - | 0 |
Improvements ✅ (secondary) | - | - | 0 |
All ❌✅ (primary) | 0.6% | [0.6%, 0.7%] | 3 |
Rollup of 6 pull requests #108357 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | - | - | 0 |
Regressions ❌ (secondary) | 1.8% | [1.8%, 1.8%] | 1 |
Improvements ✅ (primary) | -1.0% | [-1.1%, -0.9%] | 2 |
Improvements ✅ (secondary) | -2.2% | [-2.5%, -1.9%] | 6 |
All ❌✅ (primary) | -1.0% | [-1.1%, -0.9%] | 2 |
Use tcx.ty_error_with_guaranteed
in more places, rename variants #108369 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | - | - | 0 |
Regressions ❌ (secondary) | - | - | 0 |
Improvements ✅ (primary) | -1.1% | [-1.2%, -1.0%] | 2 |
Improvements ✅ (secondary) | -2.2% | [-2.5%, -2.0%] | 6 |
All ❌✅ (primary) | -1.1% | [-1.2%, -1.0%] | 2 |
Emit the enum discriminant separately for the Encodable macro #108440 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | - | - | 0 |
Regressions ❌ (secondary) | - | - | 0 |
Improvements ✅ (primary) | -0.6% | [-1.0%, -0.3%] | 91 |
Improvements ✅ (secondary) | -0.6% | [-0.9%, -0.4%] | 22 |
All ❌✅ (primary) | -0.6% | [-1.0%, -0.3%] | 91 |
rustdoc: reduce allocations when generating tooltips #108098 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | - | - | 0 |
Regressions ❌ (secondary) | - | - | 0 |
Improvements ✅ (primary) | -5.1% | [-17.0%, -0.6%] | 4 |
Improvements ✅ (secondary) | -0.9% | [-0.9%, -0.9%] | 1 |
All ❌✅ (primary) | -5.1% | [-17.0%, -0.6%] | 4 |
Rollup of 8 pull requests #108339 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 0.4% | [0.3%, 0.6%] | 4 |
Regressions ❌ (secondary) | 0.8% | [0.7%, 0.9%] | 6 |
Improvements ✅ (primary) | -0.8% | [-3.0%, -0.2%] | 8 |
Improvements ✅ (secondary) | -0.2% | [-0.3%, -0.2%] | 2 |
All ❌✅ (primary) | -0.4% | [-3.0%, 0.6%] | 12 |
diagnostics: if AssocFn has self argument, describe as method #108324 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 1.1% | [1.0%, 1.2%] | 2 |
Regressions ❌ (secondary) | 2.2% | [2.0%, 2.6%] | 6 |
Improvements ✅ (primary) | - | - | 0 |
Improvements ✅ (secondary) | -2.3% | [-2.3%, -2.3%] | 1 |
All ❌✅ (primary) | 1.1% | [1.0%, 1.2%] | 2 |
Update cargo #108330 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | - | - | 0 |
Regressions ❌ (secondary) | 2.5% | [2.5%, 2.5%] | 1 |
Improvements ✅ (primary) | -1.0% | [-1.1%, -0.9%] | 2 |
Improvements ✅ (secondary) | -2.2% | [-2.5%, -1.9%] | 6 |
All ❌✅ (primary) | -1.0% | [-1.1%, -0.9%] | 2 |
Rollup of 7 pull requests #108386 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 1.0% | [0.9%, 1.1%] | 2 |
Regressions ❌ (secondary) | 2.0% | [0.4%, 2.6%] | 7 |
Improvements ✅ (primary) | - | - | 0 |
Improvements ✅ (secondary) | -2.5% | [-2.5%, -2.5%] | 1 |
All ❌✅ (primary) | 1.0% | [0.9%, 1.1%] | 2 |
Rollup of 7 pull requests #108464 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | - | - | 0 |
Regressions ❌ (secondary) | 0.4% | [0.4%, 0.4%] | 1 |
Improvements ✅ (primary) | -0.7% | [-0.9%, -0.6%] | 6 |
Improvements ✅ (secondary) | - | - | 0 |
All ❌✅ (primary) | -0.7% | [-0.9%, -0.6%] | 6 |
Add inlining attributes for query system functions #108375 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | - | - | 0 |
Regressions ❌ (secondary) | 0.4% | [0.2%, 0.7%] | 5 |
Improvements ✅ (primary) | -0.4% | [-1.1%, -0.2%] | 38 |
Improvements ✅ (secondary) | -0.4% | [-0.7%, -0.2%] | 12 |
All ❌✅ (primary) | -0.4% | [-1.1%, -0.2%] | 38 |
.item-table
evaluate_obligation
query (when new solver is enabled)to_opt_poly_trait_pred
backtrace
crate” with backtrace
.src-line-numbers > span
to .src-line-numbers > a
TODO: Nags