2022-10-18 Triage Log

Overall a fairly busy week, with many improvements and regressions, though the net result ends up being a small regression. Pretty busy week in terms of regressions in rollups as well, which unfortunately mostly were not followed up on prior to the report being put together, despite the relative ease of running perf against individual PRs now.

Triage done by @simulacrum. Revision range: 1e926f06528ecb2503f026e2fd53cb735d487b10..e0f8e60dddfecfc9093ee9d9f42557d8260c0355

Summary:

(instructions:u)meanrangecount
Regressions ❌
(primary)
1.7%[0.2%, 6.3%]46
Regressions ❌
(secondary)
1.6%[0.3%, 5.4%]46
Improvements ✅
(primary)
-0.6%[-2.3%, -0.2%]45
Improvements ✅
(secondary)
-2.0%[-9.2%, -0.2%]32
All ❌✅ (primary)0.6%[-2.3%, 6.3%]91

2 Regressions, 4 Improvements, 4 Mixed; 4 of them in rollups 47 artifact comparisons made in total

Regressions

Populate effective visibilities in ‘rustc_resolve’ #102026 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
1.1%[0.2%, 5.6%]65
Regressions ❌
(secondary)
0.9%[0.2%, 3.7%]32
Improvements ✅
(primary)
--0
Improvements ✅
(secondary)
--0
All ❌✅ (primary)1.1%[0.2%, 5.6%]65

The compiler is doing more work after this PR, but haven't yet narrowed in on a fix or exact cause for the regression. @petrochenkov expects that we probably ought to be able to reduce the impact.

Rollup of 7 pull requests #102915 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
0.6%[0.2%, 1.1%]12
Regressions ❌
(secondary)
--0
Improvements ✅
(primary)
-0.7%[-0.9%, -0.6%]6
Improvements ✅
(secondary)
--0
All ❌✅ (primary)0.2%[-0.9%, 1.1%]18

The improvements here are in diesel, which is noise; the regressions look plausibly real. Queued an additional perf run for further investigation.

Improvements

Rollup of 11 pull requests #102926 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
--0
Regressions ❌
(secondary)
0.2%[0.2%, 0.2%]1
Improvements ✅
(primary)
-0.4%[-1.0%, -0.2%]20
Improvements ✅
(secondary)
-0.5%[-0.6%, -0.3%]7
All ❌✅ (primary)-0.4%[-1.0%, -0.2%]20

This may not be as much of an improvement as it looks; the diesel-related changes are all spurious (we are seeing an uptick in noise there).

Remove TokenStreamBuilder #102692 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
--0
Regressions ❌
(secondary)
--0
Improvements ✅
(primary)
-0.5%[-0.6%, -0.3%]4
Improvements ✅
(secondary)
-4.1%[-9.5%, -1.2%]9
All ❌✅ (primary)-0.5%[-0.6%, -0.3%]4

remove type traversal for mir constants #102355 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
--0
Regressions ❌
(secondary)
--0
Improvements ✅
(primary)
-0.4%[-0.8%, -0.2%]36
Improvements ✅
(secondary)
-1.3%[-3.7%, -0.2%]37
All ❌✅ (primary)-0.4%[-0.8%, -0.2%]36

Rollup of 7 pull requests #103026 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
0.9%[0.7%, 1.1%]6
Regressions ❌
(secondary)
0.4%[0.4%, 0.4%]1
Improvements ✅
(primary)
--0
Improvements ✅
(secondary)
-0.5%[-1.5%, -0.3%]7
All ❌✅ (primary)0.9%[0.7%, 1.1%]6

Regressions are essentially all in diesel, which are spurious.

Mixed

Rollup of 7 pull requests #102975 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
0.6%[0.2%, 1.0%]19
Regressions ❌
(secondary)
1.3%[0.2%, 3.8%]41
Improvements ✅
(primary)
-0.9%[-1.7%, -0.4%]14
Improvements ✅
(secondary)
--0
All ❌✅ (primary)-0.0%[-1.7%, 1.0%]33

Check hidden types in dead code #102700 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
--0
Regressions ❌
(secondary)
1.2%[1.0%, 1.3%]4
Improvements ✅
(primary)
-0.3%[-0.4%, -0.2%]13
Improvements ✅
(secondary)
-0.6%[-0.7%, -0.5%]4
All ❌✅ (primary)-0.3%[-0.4%, -0.2%]13

Get rid of rustc_query_description! #102895 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
0.3%[0.2%, 0.5%]9
Regressions ❌
(secondary)
0.6%[0.3%, 0.8%]5
Improvements ✅
(primary)
--0
Improvements ✅
(secondary)
-0.7%[-1.2%, -0.2%]6
All ❌✅ (primary)0.3%[0.2%, 0.5%]9

Make overlapping_impls not generic #102931 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
--0
Regressions ❌
(secondary)
0.5%[0.5%, 0.5%]2
Improvements ✅
(primary)
-1.6%[-2.3%, -1.1%]7
Improvements ✅
(secondary)
--0
All ❌✅ (primary)-1.6%[-2.3%, -1.1%]7