2023-05-23 Triage Log

There were a few regressions, but most were expected, and one in particular (PR #111807) is expected yield gains in object code performance at the expense of a slight compile-time hit. There are a couple PR's that need future followup, namely PRs #111364 and #111524.

Triage done by @pnkfelix. Revision range: 3ea9ad53..cda5becc

Summary:

(instructions:u)meanrangecount
Regressions ❌
(primary)
0.4%[0.2%, 2.3%]28
Regressions ❌
(secondary)
0.4%[0.2%, 0.7%]19
Improvements ✅
(primary)
-0.9%[-4.4%, -0.3%]11
Improvements ✅
(secondary)
-0.8%[-2.2%, -0.4%]11
All ❌✅ (primary)0.1%[-4.4%, 2.3%]39

3 Regressions, 2 Improvements, 5 Mixed; 2 of them in rollups 51 artifact comparisons made in total

Regressions

Remove the ThinLTO CU hack #111364 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
1.6%[1.1%, 2.2%]2
Regressions ❌
(secondary)
--0
Improvements ✅
(primary)
--0
Improvements ✅
(secondary)
--0
All ❌✅ (primary)1.6%[1.1%, 2.2%]2
  • This is being discussed on the comment thread for PR #111364.
  • what is worrisome is not instructions:u, but rather the regressions to size:linked_artifact (aka binary sizes).
  • the PR author is going to try to replicate locally and investigate further if so.

Add creation time support to FileTimes on apple and windows #109773 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
0.8%[0.7%, 0.8%]4
Regressions ❌
(secondary)
0.6%[0.3%, 0.7%]6
Improvements ✅
(primary)
--0
Improvements ✅
(secondary)
--0
All ❌✅ (primary)0.8%[0.7%, 0.8%]4
  • already marked as triaged.

[rustc_ty_utils] Treat drop_in_place's *mut argument like &mut when adding LLVM attributes #111807 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
0.4%[0.2%, 0.7%]17
Regressions ❌
(secondary)
1.3%[0.2%, 2.9%]6
Improvements ✅
(primary)
-0.2%[-0.2%, -0.2%]1
Improvements ✅
(secondary)
--0
All ❌✅ (primary)0.4%[-0.2%, 0.7%]18
  • This change emits more attributes; it is expected to slow down the compiler, and that is compensated by the fact that it enables better code-generation from what we emit out of the compiler
  • marking as triaged.

Improvements

Rollup of 7 pull requests #111650 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
--0
Regressions ❌
(secondary)
--0
Improvements ✅
(primary)
-2.3%[-4.4%, -0.6%]3
Improvements ✅
(secondary)
-2.2%[-2.5%, -2.0%]2
All ❌✅ (primary)-2.3%[-4.4%, -0.6%]3
  • solely improvements to rustdoc benchmarks

Rollup of 7 pull requests #111721 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
--0
Regressions ❌
(secondary)
--0
Improvements ✅
(primary)
-0.2%[-0.3%, -0.2%]3
Improvements ✅
(secondary)
-0.3%[-0.4%, -0.2%]6
All ❌✅ (primary)-0.2%[-0.3%, -0.2%]3
  • minor improvement to primary regex and secondary externs.

Mixed

Specialize query execution for incremental and non-incremental #108062 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
0.2%[0.2%, 0.3%]9
Regressions ❌
(secondary)
0.8%[0.2%, 2.9%]5
Improvements ✅
(primary)
-0.6%[-1.1%, -0.3%]17
Improvements ✅
(secondary)
-0.8%[-1.2%, -0.2%]31
All ❌✅ (primary)-0.3%[-1.1%, 0.3%]26
  • the sea of green improvements to scenario=full outweighs the occasional (and minor) red regressions to incr cases.
  • marking as triaged.

Merge return place with other locals in CopyProp. #111556 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
--0
Regressions ❌
(secondary)
0.4%[0.4%, 0.4%]2
Improvements ✅
(primary)
-0.4%[-0.7%, -0.2%]17
Improvements ✅
(secondary)
-0.8%[-0.9%, -0.7%]4
All ❌✅ (primary)-0.4%[-0.7%, -0.2%]17
  • already marked as triaged.

Shorten backtraces for queries in ICEs #108938 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
0.3%[0.2%, 0.4%]3
Regressions ❌
(secondary)
0.4%[0.2%, 0.6%]10
Improvements ✅
(primary)
--0
Improvements ✅
(secondary)
-0.2%[-0.3%, -0.2%]3
All ❌✅ (primary)0.3%[0.2%, 0.4%]3
  • already marked as triaged.

do not allow inference in predicate_must_hold (alternative approach) #110100 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
1.1%[0.9%, 1.4%]6
Regressions ❌
(secondary)
--0
Improvements ✅
(primary)
--0
Improvements ✅
(secondary)
-0.3%[-0.3%, -0.3%]1
All ❌✅ (primary)1.1%[0.9%, 1.4%]6
  • diesel took a 1% regression in various scenarios.
  • there are indications from T-types that this is fixing a bug
  • therefore, the performance regression is acceptable; marking as triaged.

ascii::Char-ify the escaping code in core #111524 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
0.4%[0.2%, 0.7%]6
Regressions ❌
(secondary)
--0
Improvements ✅
(primary)
-0.6%[-0.7%, -0.6%]3
Improvements ✅
(secondary)
-0.5%[-0.6%, -0.4%]3
All ❌✅ (primary)0.1%[-0.7%, 0.7%]9
  • lqd identified most of this as noise.
  • however, there was a bump on the compile-time for html5ever that has not yet receded as of 2023-05-23; i.e. that might not be noise.
  • therefore, not yet marking as triaged...

Untriaged Pull Requests