2023-04-25 Triage Log

A week mostly dominated by noise, in particular a persistent bimodality in keccak and cranelift-codegen. No significant changes outside of that, a relatively equal mix of regressions and improvements. Most of the bimodality has been removed below as it's just noise.

Triage done by @simulacrum. Revision range: 74864fa496997a6498e623f0d2019ccb7eb6dad0..fdeef3ed1809aa9bd4ea9ff0fad92010c6de669c

Summary:

(instructions:u)meanrangecount
Regressions ❌
(primary)
1.2%[0.5%, 2.2%]11
Regressions ❌
(secondary)
2.0%[0.6%, 7.7%]48
Improvements ✅
(primary)
-1.0%[-3.6%, -0.3%]144
Improvements ✅
(secondary)
-1.6%[-6.7%, -0.3%]89
All ❌✅ (primary)-0.9%[-3.6%, 2.2%]155

3 Regressions, 6 Improvements, 5 Mixed; 1 of them in rollups 60 artifact comparisons made in total

Regressions

Support AIX-style archive type #106704 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
1.1%[1.0%, 1.2%]6
Regressions ❌
(secondary)
2.5%[1.1%, 3.9%]2
Improvements ✅
(primary)
--0
Improvements ✅
(secondary)
--0
All ❌✅ (primary)1.1%[1.0%, 1.2%]6

This PR also bumped std dependencies, which likely explains the additional compile time cost in our smallest benchmarks (e.g., helloworld).

Ensure mir_drops_elaborated_and_const_checked when requiring codegen. #110107 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
--0
Regressions ❌
(secondary)
2.0%[1.7%, 2.4%]10
Improvements ✅
(primary)
--0
Improvements ✅
(secondary)
--0
All ❌✅ (primary)--0

Per comment on the PR this is enabling lints to run on dead code, expected regression.

Encode lifetime param spans too #110469 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
0.5%[0.2%, 0.7%]21
Regressions ❌
(secondary)
0.7%[0.3%, 0.9%]4
Improvements ✅
(primary)
--0
Improvements ✅
(secondary)
--0
All ❌✅ (primary)0.5%[0.2%, 0.7%]21

This comment justifies the regressions.

Improvements

Don't allocate on SimplifyCfg/Locals/Const on every MIR pass #110477 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
--0
Regressions ❌
(secondary)
--0
Improvements ✅
(primary)
-0.5%[-0.7%, -0.3%]10
Improvements ✅
(secondary)
-0.6%[-0.7%, -0.4%]9
All ❌✅ (primary)-0.5%[-0.7%, -0.3%]10

Rm const traits in libcore #110393 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
--0
Regressions ❌
(secondary)
--0
Improvements ✅
(primary)
-0.9%[-2.6%, -0.4%]15
Improvements ✅
(secondary)
-1.7%[-2.8%, -0.5%]24
All ❌✅ (primary)-0.9%[-2.6%, -0.4%]15

In LexicalResolver, don't construct graph unless necessary. #110527 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
--0
Regressions ❌
(secondary)
--0
Improvements ✅
(primary)
-0.3%[-0.4%, -0.2%]4
Improvements ✅
(secondary)
-0.4%[-0.8%, -0.2%]11
All ❌✅ (primary)-0.3%[-0.4%, -0.2%]4

Enable flatten-format-args by default. #109999 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
--0
Regressions ❌
(secondary)
--0
Improvements ✅
(primary)
-1.5%[-2.3%, -0.6%]10
Improvements ✅
(secondary)
--0
All ❌✅ (primary)-1.5%[-2.3%, -0.6%]10

Allow to feed a value in another query's cache and remove WithOptConstParam #96840 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
--0
Regressions ❌
(secondary)
0.6%[0.6%, 0.6%]1
Improvements ✅
(primary)
-0.8%[-2.1%, -0.3%]57
Improvements ✅
(secondary)
-0.9%[-1.7%, -0.3%]26
All ❌✅ (primary)-0.8%[-2.1%, -0.3%]57

Report allocation errors as panics #109507 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
--0
Regressions ❌
(secondary)
--0
Improvements ✅
(primary)
-0.2%[-0.2%, -0.2%]3
Improvements ✅
(secondary)
--0
All ❌✅ (primary)-0.2%[-0.2%, -0.2%]3

Mixed

rustc_metadata: Remove Span from ModChild #109772 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
0.4%[0.3%, 0.5%]5
Regressions ❌
(secondary)
0.2%[0.2%, 0.2%]1
Improvements ✅
(primary)
-0.4%[-0.7%, -0.2%]15
Improvements ✅
(secondary)
-1.4%[-4.2%, -0.4%]13
All ❌✅ (primary)-0.2%[-0.7%, 0.5%]20

Rollup of 10 pull requests #110546 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
1.6%[1.1%, 2.1%]3
Regressions ❌
(secondary)
--0
Improvements ✅
(primary)
--0
Improvements ✅
(secondary)
-3.1%[-3.1%, -3.1%]1
All ❌✅ (primary)1.6%[1.1%, 2.1%]3

resolve: Remove module_children_untracked #110542 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
0.6%[0.2%, 0.9%]11
Regressions ❌
(secondary)
--0
Improvements ✅
(primary)
-0.3%[-0.3%, -0.3%]1
Improvements ✅
(secondary)
-1.5%[-1.9%, -1.0%]3
All ❌✅ (primary)0.6%[-0.3%, 0.9%]12

Turn on ConstDebugInfo pass. #107404 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
0.4%[0.2%, 0.7%]12
Regressions ❌
(secondary)
0.4%[0.4%, 0.4%]1
Improvements ✅
(primary)
--0
Improvements ✅
(secondary)
-0.3%[-0.3%, -0.3%]2
All ❌✅ (primary)0.4%[0.2%, 0.7%]12

Remove the size of locals heuristic in MIR inlining #110705 (Comparison Link)

(instructions:u)meanrangecount
Regressions ❌
(primary)
0.9%[0.3%, 2.7%]9
Regressions ❌
(secondary)
1.9%[0.3%, 7.9%]34
Improvements ✅
(primary)
-0.6%[-1.8%, -0.2%]59
Improvements ✅
(secondary)
-0.8%[-2.5%, -0.2%]46
All ❌✅ (primary)-0.4%[-1.8%, 2.7%]68