Skip to content

Commit fba75cc

Browse files
committed
Filled in weekly triage report.
1 parent fc69e44 commit fba75cc

File tree

1 file changed

+43
-40
lines changed

1 file changed

+43
-40
lines changed

triage/2024-06-03.md

Lines changed: 43 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,12 @@
11
# 2024-06-03 Triage Log
22

3-
TODO: Summary
3+
A quiet week; we did have one quite serious regression (#115105, "enable
4+
DestinationPropagation by default"), but it was shortly reverted (#125794).
5+
The only other PR identified as potentially problematic was rollup
6+
[PR #125824](https://github.com/rust-lang/rust/pull/125824), but even
7+
that is relatively limited in its effect.
48

5-
Triage done by **@???**.
9+
Triage done by **@pnkfelix**.
610
Revision range: [a59072ec..1d52972d](https://perf.rust-lang.org/?start=a59072ec4fb6824213df5e9de8cae4812fd4fe97&end=1d52972dd8592edf4026aa577c8ce69acc0ac2d1&absolute=false&stat=instructions%3Au)
711

812
**Summary**:
@@ -31,6 +35,11 @@ Rollup of 5 pull requests [#125649](https://github.com/rust-lang/rust/pull/12564
3135
| Improvements ✅ <br /> (secondary) | - | - | 0 |
3236
| All ❌✅ (primary) | 1.2% | [-0.1%, 2.1%] | 13 |
3337

38+
* all 12 of the regressing primary benchmarks are diesel-1.4.8 (in a variety of configurations).
39+
* problem was isolated to PR #125089 (improve diagnostic output of non_local_definitions lint)
40+
* Urgau notes: "The lint triggers nearly 150 times in the version of diesel used by rustc-perf, so the benchmark has become a bit a linting machinery benchmark"
41+
* cc rustc-perf#1819
42+
* marked as triaged.
3443

3544
Rollup of 5 pull requests [#125665](https://github.com/rust-lang/rust/pull/125665) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=8c4db851a7bb64173832e6602638204ebbd373a8&end=274499dd0ff53b81e93b80520f7afe25adaa2812&stat=instructions:u)
3645

@@ -42,6 +51,9 @@ Rollup of 5 pull requests [#125665](https://github.com/rust-lang/rust/pull/12566
4251
| Improvements ✅ <br /> (secondary) | - | - | 0 |
4352
| All ❌✅ (primary) | 0.5% | [0.5%, 0.5%] | 1 |
4453

54+
* helloworld is sole primary regression.
55+
* marked as triaged (my own opinion is that helloworld is a useful canary when it regresses by a more significant amount than this)
56+
* (also the 30-day history shows the story for helloworld to be quite a bit more complicated than what is presented by the effects of this single PR, there are lots of spikes mixed in there)
4557

4658
fn_arg_sanity_check: fix panic message [#125695](https://github.com/rust-lang/rust/pull/125695) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=5870f1ccbbb2661c92cdc356231386210a64d723&end=4cf5723dbe471ef0a32857b968b91498551f5e38&stat=instructions:u)
4759

@@ -53,6 +65,8 @@ fn_arg_sanity_check: fix panic message [#125695](https://github.com/rust-lang/ru
5365
| Improvements ✅ <br /> (secondary) | - | - | 0 |
5466
| All ❌✅ (primary) | 0.8% | [0.8%, 0.9%] | 4 |
5567

68+
* helloworld is the sole primary regression.
69+
* (already) marked as triaged
5670

5771
#### Improvements
5872

@@ -66,6 +80,8 @@ Omit non-needs_drop drop_in_place in vtables [#122662](https://github.com/rust-l
6680
| Improvements ✅ <br /> (secondary) | -0.5% | [-1.0%, -0.2%] | 18 |
6781
| All ❌✅ (primary) | -0.6% | [-1.5%, -0.2%] | 9 |
6882

83+
* improvements are to helloworld-opt and regex-opt.
84+
* small but seems real given nature of PR (largely a binary size reduction)
6985

7086
Update cargo [#125682](https://github.com/rust-lang/rust/pull/125682) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=274499dd0ff53b81e93b80520f7afe25adaa2812&end=da159eb331b27df528185c616b394bb0e1d2a4bd&stat=instructions:u)
7187

@@ -77,6 +93,8 @@ Update cargo [#125682](https://github.com/rust-lang/rust/pull/125682) [(Comparis
7793
| Improvements ✅ <br /> (secondary) | -0.4% | [-0.5%, -0.2%] | 12 |
7894
| All ❌✅ (primary) | -0.5% | [-0.6%, -0.5%] | 3 |
7995

96+
* improvements are to helloworld-check
97+
* probably just noise
8098

8199
Stabilize `custom_code_classes_in_docs` feature [#124577](https://github.com/rust-lang/rust/pull/124577) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=466be510af95d377a4e9997a6ab7c4db5f91e9ec&end=05965ae238403d8c141170b411245a62aa046240&stat=instructions:u)
82100

@@ -88,6 +106,8 @@ Stabilize `custom_code_classes_in_docs` feature [#124577](https://github.com/rus
88106
| Improvements ✅ <br /> (secondary) | -0.7% | [-0.9%, -0.5%] | 2 |
89107
| All ❌✅ (primary) | -0.4% | [-0.8%, -0.2%] | 9 |
90108

109+
* improvements are to various doc-full benchmarks.
110+
* Probably measurement bias (unless somehow the stability checks are a noticeable expense?)
91111

92112
Increase vtable layout size [#123572](https://github.com/rust-lang/rust/pull/123572) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=acaf0aeed0dfbfc4be9f996344e2c5f294cf5794&end=f2208b32971faba7fa6bf09bd0821adbf3db0c00&stat=instructions:u)
93113

@@ -99,6 +119,8 @@ Increase vtable layout size [#123572](https://github.com/rust-lang/rust/pull/123
99119
| Improvements ✅ <br /> (secondary) | -0.3% | [-0.6%, -0.2%] | 10 |
100120
| All ❌✅ (primary) | - | - | 0 |
101121

122+
* all "improvements" are to secondary benchmarks: unify-linearly, match-stress, and unused-warnings
123+
* (the improvement from this PR is expected to be realized in runtime performance, especially for code heavy with vtable lookups. Its unsurprising that it wouldn't have a noticeable effect on the compiler tooolchain.)
102124

103125
Avoid checking the edition as much as possible [#125828](https://github.com/rust-lang/rust/pull/125828) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=eda9d7f987de76b9d61c633a6ac328936e1b94f0&end=a6416d8907bc94ef1a032d54cb0443cde963e455&stat=instructions:u)
104126

@@ -110,6 +132,7 @@ Avoid checking the edition as much as possible [#125828](https://github.com/rust
110132
| Improvements ✅ <br /> (secondary) | -0.4% | [-0.5%, -0.3%] | 4 |
111133
| All ❌✅ (primary) | -0.4% | [-0.4%, -0.3%] | 6 |
112134

135+
* this is recovering performance that was lost in PR #123865
113136

114137
#### Mixed
115138

@@ -123,6 +146,8 @@ Create const block DefIds in typeck instead of ast lowering [#124650](https://gi
123146
| Improvements ✅ <br /> (secondary) | -0.3% | [-0.3%, -0.3%] | 1 |
124147
| All ❌✅ (primary) | -0.3% | [-0.6%, 0.2%] | 8 |
125148

149+
* as previously noted by @lqd : "Tiny changes, and overall more gains than losses, probably not worth investigation effort imho."
150+
* marking as triaged
126151

127152
Rollup of 8 pull requests [#125691](https://github.com/rust-lang/rust/pull/125691) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=da159eb331b27df528185c616b394bb0e1d2a4bd&end=751691271d76b8435559200b84d1947c2bd735bd&stat=instructions:u)
128153

@@ -134,6 +159,10 @@ Rollup of 8 pull requests [#125691](https://github.com/rust-lang/rust/pull/12569
134159
| Improvements ✅ <br /> (secondary) | -0.3% | [-0.3%, -0.3%] | 1 |
135160
| All ❌✅ (primary) | -0.2% | [-0.6%, 0.4%] | 3 |
136161

162+
* regression to image-opt-full
163+
* improvements to webrender-2022-opt-full and regex-opt-incr-patched
164+
* had a broad (if small) improvement to binary sizes, which was isolated to PR #124251
165+
* overall wins seem to outweigh losses; marking as triaged.
137166

138167
don't inhibit random field reordering on repr(packed(1)) [#125360](https://github.com/rust-lang/rust/pull/125360) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=4cf5723dbe471ef0a32857b968b91498551f5e38&end=f2e1a3a80ae54734e1a3d306f31c2caebb05de9b&stat=instructions:u)
139168

@@ -145,6 +174,9 @@ don't inhibit random field reordering on repr(packed(1)) [#125360](https://githu
145174
| Improvements ✅ <br /> (secondary) | -0.4% | [-0.7%, -0.3%] | 13 |
146175
| All ❌✅ (primary) | 0.5% | [-0.8%, 1.3%] | 17 |
147176

177+
* regressed bitmaps and typenum; improved helloworld
178+
* instruction counts were affected but not cycle counts; [one theory is that object code has extra offset computations or niche computations...](https://github.com/rust-lang/rust/pull/125360#issuecomment-2137781620)
179+
* since cycle count was not affected, does not seem worth further investigation; marking as triaged
148180

149181
Enable DestinationPropagation by default. [#115105](https://github.com/rust-lang/rust/pull/115105) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=91c0823ee63e793d990bb9fed898dc95b5d6db51&end=cfb730450f847bb622243eaaab15e77e58d91767&stat=instructions:u)
150182

@@ -156,6 +188,8 @@ Enable DestinationPropagation by default. [#115105](https://github.com/rust-lang
156188
| Improvements ✅ <br /> (secondary) | -0.8% | [-1.6%, -0.2%] | 18 |
157189
| All ❌✅ (primary) | 0.2% | [-4.0%, 3.4%] | 41 |
158190

191+
* was reverted due to injecting [big regression for "Building stage1 codegen backend gcc"](https://github.com/rust-lang/rust/pull/115105#issuecomment-2141019310)
192+
* marking as triaged
159193

160194
Revert "Auto merge of #115105 - cjgillot:dest-prop-default, r=oli-obk" [#125794](https://github.com/rust-lang/rust/pull/125794) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=434999efe6e9aa61afbd8b4ae86864d3ce91c533&end=366da30d554719e7490950aeea5d3f3a5927e313&stat=instructions:u)
161195

@@ -167,6 +201,8 @@ Revert "Auto merge of #115105 - cjgillot:dest-prop-default, r=oli-obk" [#125794]
167201
| Improvements ✅ <br /> (secondary) | -1.5% | [-3.1%, -0.4%] | 18 |
168202
| All ❌✅ (primary) | -0.2% | [-3.2%, 4.2%] | 33 |
169203

204+
* revert of above PR
205+
* marking as triaged
170206

171207
Rollup of 7 pull requests [#125824](https://github.com/rust-lang/rust/pull/125824) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=2a2c29aafa50bf6fe53d66b32070eba59f860ac3&end=ada5e2c7b5427a591e30baeeee2698a5eb6db0bd&stat=instructions:u)
172208

@@ -178,41 +214,8 @@ Rollup of 7 pull requests [#125824](https://github.com/rust-lang/rust/pull/12582
178214
| Improvements ✅ <br /> (secondary) | - | - | 0 |
179215
| All ❌✅ (primary) | 0.4% | [-0.4%, 1.1%] | 4 |
180216

181-
182-
#### Untriaged Pull Requests
183-
184-
- [#125824 Rollup of 7 pull requests](https://github.com/rust-lang/rust/pull/125824)
185-
- [#125794 Revert "Auto merge of #115105 - cjgillot:dest-prop-default, r=oli-obk"](https://github.com/rust-lang/rust/pull/125794)
186-
- [#125691 Rollup of 8 pull requests](https://github.com/rust-lang/rust/pull/125691)
187-
- [#125665 Rollup of 5 pull requests](https://github.com/rust-lang/rust/pull/125665)
188-
- [#125649 Rollup of 5 pull requests](https://github.com/rust-lang/rust/pull/125649)
189-
- [#125360 don't inhibit random field reordering on repr(packed(1))](https://github.com/rust-lang/rust/pull/125360)
190-
- [#125144 Rollup of 6 pull requests](https://github.com/rust-lang/rust/pull/125144)
191-
- [#125120 Rollup of 7 pull requests](https://github.com/rust-lang/rust/pull/125120)
192-
- [#124700 Remove an unnecessary cast](https://github.com/rust-lang/rust/pull/124700)
193-
- [#124650 Create const block DefIds in typeck instead of ast lowering](https://github.com/rust-lang/rust/pull/124650)
194-
- [#124417 Make early lints translatable](https://github.com/rust-lang/rust/pull/124417)
195-
- [#124241 Rollup of 5 pull requests](https://github.com/rust-lang/rust/pull/124241)
196-
- [#123909 Stabilize `Utf8Chunks`](https://github.com/rust-lang/rust/pull/123909)
197-
- [#123865 Update `expr` matcher for Edition 2024 and add `expr_2021` nonterminal](https://github.com/rust-lang/rust/pull/123865)
198-
- [#123812 Follow-up fixes to `report_return_mismatched_types`](https://github.com/rust-lang/rust/pull/123812)
199-
- [#123147 Rollup of 8 pull requests](https://github.com/rust-lang/rust/pull/123147)
200-
- [#122976 Remove len argument from RawVec::reserve_for_push](https://github.com/rust-lang/rust/pull/122976)
201-
- [#122900 Rollup of 8 pull requests](https://github.com/rust-lang/rust/pull/122900)
202-
- [#122671 Codegen const panic messages as function calls](https://github.com/rust-lang/rust/pull/122671)
203-
- [#122396 Less generic code for Vec allocations](https://github.com/rust-lang/rust/pull/122396)
204-
- [#121955 Rollup of 5 pull requests](https://github.com/rust-lang/rust/pull/121955)
205-
- [#121804 Rollup of 7 pull requests](https://github.com/rust-lang/rust/pull/121804)
206-
- [#121752 Detect unused struct impls pub trait](https://github.com/rust-lang/rust/pull/121752)
207-
- [#121462 Combine `Sub` and `Equate`](https://github.com/rust-lang/rust/pull/121462)
208-
- [#121345 Rollup of 8 pull requests](https://github.com/rust-lang/rust/pull/121345)
209-
- [#120985 Update host LLVM on x64 Linux to LLVM 18](https://github.com/rust-lang/rust/pull/120985)
210-
- [#120863 Use intrinsics::debug_assertions in debug_assert_nounwind](https://github.com/rust-lang/rust/pull/120863)
211-
- [#120862 Rollup of 6 pull requests](https://github.com/rust-lang/rust/pull/120862)
212-
- [#120809 Use `transmute_unchecked` in `NonZero::new`.](https://github.com/rust-lang/rust/pull/120809)
213-
- [#120588 wasm: Store rlib metadata in wasm object files](https://github.com/rust-lang/rust/pull/120588)
214-
215-
#### Nags requiring follow up
216-
217-
TODO: Nags
218-
217+
* instruction-counts regressed webrender-2022-opt-full, cargo-opt-{incr-patched, full}
218+
* cycle-counts regressed webrender-2022-opt-{full, incr-full}, cranelift-codegen-opt-incr-full, and clap-opt-incr-patched
219+
* history view for webrender shows that the cycle-count effect seems real though not quite as pronounced as the original measurements indicate.
220+
* there are many potential candidates for the cause here in this rollup.
221+
* not marking as triaged; doing some followup perf runs on individual PR's

0 commit comments

Comments
 (0)