Skip to content

Latest commit

 

History

History
121 lines (87 loc) · 7.8 KB

2024-01-30.md

File metadata and controls

121 lines (87 loc) · 7.8 KB

2024-01-30 Triage Log

This was a very quiet week with only one PR having any real impact on overall compiler performance. The removal of the internal StructuralEq trait saw a roughly 0.4% improvement on average across nearly 50 real-world benchmarks.

Triage done by @rylev. Revision range: d6b151fc7..5c9c3c7

Summary:

(instructions:u) mean range count
Regressions ❌
(primary)
0.5% [0.3%, 0.7%] 5
Regressions ❌
(secondary)
0.5% [0.2%, 1.4%] 10
Improvements ✅
(primary)
-0.5% [-1.5%, -0.2%] 48
Improvements ✅
(secondary)
-2.3% [-7.7%, -0.4%] 36
All ❌✅ (primary) -0.4% [-1.5%, 0.7%] 53

0 Regressions, 4 Improvements, 4 Mixed; 3 of them in rollups 37 artifact comparisons made in total

Regressions

Improvements

Only use dense bitsets in dataflow analyses #116152 (Comparison Link)

(instructions:u) mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-0.4% [-0.5%, -0.2%] 5
Improvements ✅
(secondary)
-0.8% [-1.1%, -0.4%] 2
All ❌✅ (primary) -0.4% [-0.5%, -0.2%] 5

const-eval interning: get rid of type-driven traversal #119044 (Comparison Link)

(instructions:u) mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-0.9% [-1.1%, -0.8%] 3
Improvements ✅
(secondary)
-3.8% [-8.0%, -0.6%] 14
All ❌✅ (primary) -0.9% [-1.1%, -0.8%] 3

Remove all ConstPropNonsense #119627 (Comparison Link)

(instructions:u) mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-0.4% [-0.6%, -0.2%] 11
Improvements ✅
(secondary)
-0.5% [-0.5%, -0.5%] 3
All ❌✅ (primary) -0.4% [-0.6%, -0.2%] 11

remove StructuralEq trait #116167 (Comparison Link)

(instructions:u) mean range count
Regressions ❌
(primary)
0.3% [0.3%, 0.3%] 1
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-0.4% [-0.6%, -0.2%] 48
Improvements ✅
(secondary)
-1.3% [-3.0%, -0.3%] 23
All ❌✅ (primary) -0.4% [-0.6%, 0.3%] 49

Mixed

Rollup of 10 pull requests #120335 (Comparison Link)

(instructions:u) mean range count
Regressions ❌
(primary)
0.4% [0.3%, 0.8%] 9
Regressions ❌
(secondary)
0.7% [0.6%, 0.9%] 2
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-0.7% [-0.7%, -0.7%] 1
All ❌✅ (primary) 0.4% [0.3%, 0.8%] 9
  • Small regressions in doc benchmarks
  • Most likely caused by addings AsyncFn family of traits.
  • Author has been pinged, but it's probably acceptable cost given that we're documenting more.

Rollup of 9 pull requests #120375 (Comparison Link)

(instructions:u) mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
0.3% [0.3%, 0.4%] 3
Improvements ✅
(primary)
-0.2% [-0.2%, -0.2%] 6
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) -0.2% [-0.2%, -0.2%] 6
  • Small number of improvements outweigh the small number of regressions and so it's not really worth investigating further.

Rollup of 12 pull requests #120401 (Comparison Link)

(instructions:u) mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
0.6% [0.5%, 1.1%] 7
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-3.1% [-3.1%, -3.1%] 1
All ❌✅ (primary) - - 0
  • Very small regressions in match stress test is not worth investigating

Merge into larger interval set #120024 (Comparison Link)

(instructions:u) mean range count
Regressions ❌
(primary)
0.3% [0.2%, 0.4%] 14
Regressions ❌
(secondary)
0.2% [0.2%, 0.2%] 1
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-0.3% [-0.3%, -0.2%] 2
All ❌✅ (primary) 0.3% [0.2%, 0.4%] 14
  • The reviewer decided that the performance hit here was worth it given that we are now protecting against truly extreme cases that the perf benchmark suite doesn't test against.