A somewhat difficult week to triage due to the large amount of noise coming from two benchmarks. Hopefully this noise settles down in the future. Other than that, improvements much outweighed regressions with an average of 142 changes to instruction count averaging 0.7% improvement. There were no huge wins this week, however.
Triage done by @rylev. Revision range: 4a24f08b..0631ea5d
Summary:
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 1.0% | [0.2%, 2.6%] | 4 |
Regressions ❌ (secondary) | 1.3% | [0.3%, 2.6%] | 23 |
Improvements ✅ (primary) | -0.7% | [-2.8%, -0.2%] | 138 |
Improvements ✅ (secondary) | -1.3% | [-2.7%, -0.2%] | 71 |
All ❌✅ (primary) | -0.7% | [-2.8%, 2.6%] | 142 |
2 Regressions, 3 Improvements, 10 Mixed; 6 of them in rollups 40 artifact comparisons made in total
add depth_limit
in QueryVTable
to avoid entering a new tcx in layout_of
#100748 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 0.5% | [0.3%, 0.7%] | 8 |
Regressions ❌ (secondary) | 0.7% | [0.3%, 1.3%] | 13 |
Improvements ✅ (primary) | - | - | 0 |
Improvements ✅ (secondary) | - | - | 0 |
All ❌✅ (primary) | 0.5% | [0.3%, 0.7%] | 8 |
html5ever-0.26.0
and deeply-nested-multi
which have been noisy lately. The regressions are small enough that it‘s likely that we’re seeing that noise here too. Subsequent changes show improvements of the same magnitude reversing the regressions here.doc
profile test cases. The common query across the potentially real regressions is the build_impl
query. This change seems like strictly less work, so I'm confused why this might be.Don't catch overflow when running with cargo doc #101039 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 0.6% | [0.6%, 0.8%] | 6 |
Regressions ❌ (secondary) | 0.9% | [0.2%, 1.3%] | 9 |
Improvements ✅ (primary) | - | - | 0 |
Improvements ✅ (secondary) | - | - | 0 |
All ❌✅ (primary) | 0.6% | [0.6%, 0.8%] | 6 |
Symbols: do not write string values of preinterned symbols into compiled artifacts #100803 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | - | - | 0 |
Regressions ❌ (secondary) | - | - | 0 |
Improvements ✅ (primary) | -0.6% | [-2.5%, -0.2%] | 35 |
Improvements ✅ (secondary) | -1.7% | [-2.6%, -0.3%] | 24 |
All ❌✅ (primary) | -0.6% | [-2.5%, -0.2%] | 35 |
Elide superfluous storage markers #99946 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 0.9% | [0.9%, 0.9%] | 1 |
Regressions ❌ (secondary) | - | - | 0 |
Improvements ✅ (primary) | -0.6% | [-1.9%, -0.2%] | 14 |
Improvements ✅ (secondary) | -0.5% | [-1.5%, -0.3%] | 38 |
All ❌✅ (primary) | -0.5% | [-1.9%, 0.9%] | 15 |
Rollup of 13 pull requests #101115 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | - | - | 0 |
Regressions ❌ (secondary) | - | - | 0 |
Improvements ✅ (primary) | -0.6% | [-0.6%, -0.6%] | 1 |
Improvements ✅ (secondary) | -1.1% | [-1.3%, -0.9%] | 8 |
All ❌✅ (primary) | -0.6% | [-0.6%, -0.6%] | 1 |
Rollup of 15 pull requests #100963 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 0.2% | [0.2%, 0.3%] | 5 |
Regressions ❌ (secondary) | 0.4% | [0.2%, 0.6%] | 17 |
Improvements ✅ (primary) | -0.6% | [-0.8%, -0.5%] | 6 |
Improvements ✅ (secondary) | -0.4% | [-0.7%, -0.3%] | 6 |
All ❌✅ (primary) | -0.2% | [-0.8%, 0.3%] | 11 |
Check projection types before inlining MIR #100571 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | - | - | 0 |
Regressions ❌ (secondary) | 0.9% | [0.7%, 1.2%] | 8 |
Improvements ✅ (primary) | -0.4% | [-1.1%, -0.2%] | 115 |
Improvements ✅ (secondary) | -0.4% | [-1.3%, -0.1%] | 42 |
All ❌✅ (primary) | -0.4% | [-1.1%, -0.2%] | 115 |
deeply-nested-multi
. Additionally, the improvements far outweigh the regressions.Rollup of 8 pull requests #101017 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 0.3% | [0.3%, 0.3%] | 2 |
Regressions ❌ (secondary) | 1.5% | [0.2%, 3.6%] | 14 |
Improvements ✅ (primary) | -0.4% | [-0.6%, -0.3%] | 8 |
Improvements ✅ (secondary) | - | - | 0 |
All ❌✅ (primary) | -0.3% | [-0.6%, 0.3%] | 10 |
Avoid reporting overflow in is_impossible_method
#100705 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 0.7% | [0.6%, 0.8%] | 6 |
Regressions ❌ (secondary) | 0.3% | [0.3%, 0.3%] | 1 |
Improvements ✅ (primary) | -0.5% | [-0.6%, -0.4%] | 2 |
Improvements ✅ (secondary) | - | - | 0 |
All ❌✅ (primary) | 0.4% | [-0.6%, 0.8%] | 8 |
Rollup of 8 pull requests #101037 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 1.5% | [0.3%, 3.8%] | 3 |
Regressions ❌ (secondary) | 0.9% | [0.5%, 1.2%] | 7 |
Improvements ✅ (primary) | - | - | 0 |
Improvements ✅ (secondary) | -1.3% | [-1.3%, -1.2%] | 2 |
All ❌✅ (primary) | 1.5% | [0.3%, 3.8%] | 3 |
session: stabilize split debuginfo on linux #98051 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | - | - | 0 |
Regressions ❌ (secondary) | 0.2% | [0.2%, 0.3%] | 2 |
Improvements ✅ (primary) | -0.6% | [-0.7%, -0.5%] | 6 |
Improvements ✅ (secondary) | -0.9% | [-1.1%, -0.6%] | 6 |
All ❌✅ (primary) | -0.6% | [-0.7%, -0.5%] | 6 |
interpret: remove support for uninitialized scalars #100043 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 0.8% | [0.6%, 0.9%] | 2 |
Regressions ❌ (secondary) | 1.3% | [0.3%, 3.2%] | 18 |
Improvements ✅ (primary) | -0.6% | [-0.7%, -0.5%] | 6 |
Improvements ✅ (secondary) | - | - | 0 |
All ❌✅ (primary) | -0.2% | [-0.7%, 0.9%] | 8 |
eval_to_allocation_raw
. Seems possible that that might indeed be impacted by this change (just going off the usage of eval_to_allocation_raw
in const eval)?format!
was causing this issue.Rollup of 9 pull requests #101064 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 0.6% | [0.5%, 0.7%] | 6 |
Regressions ❌ (secondary) | 1.0% | [1.0%, 1.0%] | 1 |
Improvements ✅ (primary) | - | - | 0 |
Improvements ✅ (secondary) | -1.3% | [-1.5%, -1.3%] | 3 |
All ❌✅ (primary) | 0.6% | [0.5%, 0.7%] | 6 |
Avoid cloning a collection only to iterate over it #100497 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 0.5% | [0.5%, 0.6%] | 6 |
Regressions ❌ (secondary) | 0.8% | [0.5%, 1.1%] | 10 |
Improvements ✅ (primary) | -0.6% | [-0.8%, -0.5%] | 3 |
Improvements ✅ (secondary) | -1.0% | [-1.2%, -0.5%] | 4 |
All ❌✅ (primary) | 0.2% | [-0.8%, 0.6%] | 9 |
Rollup of 8 pull requests #101152 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 0.6% | [0.5%, 0.7%] | 10 |
Regressions ❌ (secondary) | - | - | 0 |
Improvements ✅ (primary) | -0.3% | [-0.5%, -0.2%] | 24 |
Improvements ✅ (secondary) | -0.7% | [-1.9%, -0.3%] | 34 |
All ❌✅ (primary) | -0.0% | [-0.5%, 0.7%] | 34 |