Skip to content

Commit fb1d341

Browse files
committed
current draft. needs more flesh in summary section.
1 parent 8b2ac30 commit fb1d341

File tree

1 file changed

+176
-0
lines changed

1 file changed

+176
-0
lines changed

triage/2023-05-30.md

Lines changed: 176 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,176 @@
1+
# 2023-05-30 Triage Log
2+
3+
A good week overall, with a broad set of improvements to many primary benchmarks.
4+
5+
Triage done by **@pnkfelix**.
6+
Revision range: [cda5becc..1221e43b](https://perf.rust-lang.org/?start=cda5becc27cbc7106646fbc40aacea5e7896d954&end=1221e43bdf413f7c405e9b17ef19d76c88222098&absolute=false&stat=instructions%3Au)
7+
8+
**Summary**:
9+
10+
| (instructions:u) | mean | range | count |
11+
|:----------------------------------:|:-----:|:--------------:|:-----:|
12+
| Regressions ❌ <br /> (primary) | 0.4% | [0.3%, 0.5%] | 19 |
13+
| Regressions ❌ <br /> (secondary) | 0.5% | [0.2%, 2.7%] | 35 |
14+
| Improvements ✅ <br /> (primary) | -0.6% | [-1.2%, -0.1%] | 84 |
15+
| Improvements ✅ <br /> (secondary) | -0.5% | [-1.1%, -0.1%] | 15 |
16+
| All ❌✅ (primary) | -0.4% | [-1.2%, 0.5%] | 103 |
17+
18+
19+
3 Regressions, 3 Improvements, 3 Mixed; 4 of them in rollups
20+
26 artifact comparisons made in total
21+
22+
#### Regressions
23+
24+
[rustc_ty_utils] Treat `drop_in_place`'s *mut argument like &mut when adding LLVM attributes [#111807](https://github.com/rust-lang/rust/pull/111807) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=cda5becc27cbc7106646fbc40aacea5e7896d954&end=f3d597b31c0f101a02c230798afa31a36bdacbc6&stat=instructions:u)
25+
26+
| (instructions:u) | mean | range | count |
27+
|:----------------------------------:|:-----:|:--------------:|:-----:|
28+
| Regressions ❌ <br /> (primary) | 0.4% | [0.2%, 0.7%] | 17 |
29+
| Regressions ❌ <br /> (secondary) | 1.3% | [0.2%, 2.9%] | 6 |
30+
| Improvements ✅ <br /> (primary) | -0.2% | [-0.2%, -0.2%] | 1 |
31+
| Improvements ✅ <br /> (secondary) | - | - | 0 |
32+
| All ❌✅ (primary) | 0.4% | [-0.2%, 0.7%] | 18 |
33+
34+
* already triaged last week
35+
36+
Rollup of 6 pull requests [#111869](https://github.com/rust-lang/rust/pull/111869) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=f3d597b31c0f101a02c230798afa31a36bdacbc6&end=b08148f6a76010ea3d4e91d61245aa7aac59e4b4&stat=instructions:u)
37+
38+
| (instructions:u) | mean | range | count |
39+
|:----------------------------------:|:----:|:------------:|:-----:|
40+
| Regressions ❌ <br /> (primary) | 0.4% | [0.2%, 0.6%] | 12 |
41+
| Regressions ❌ <br /> (secondary) | 0.2% | [0.2%, 0.2%] | 2 |
42+
| Improvements ✅ <br /> (primary) | - | - | 0 |
43+
| Improvements ✅ <br /> (secondary) | - | - | 0 |
44+
| All ❌✅ (primary) | 0.4% | [0.2%, 0.6%] | 12 |
45+
46+
* TODO, come back to this later
47+
48+
Support #[global_allocator] without the allocator shim [#86844](https://github.com/rust-lang/rust/pull/86844) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=cade26637fe1c23965ce644299ed5200db7c92dd&end=a2b1646c597329d0a25efa3889b66650f65de1de&stat=instructions:u)
49+
50+
| (instructions:u) | mean | range | count |
51+
|:----------------------------------:|:----:|:------------:|:-----:|
52+
| Regressions ❌ <br /> (primary) | 0.2% | [0.2%, 0.2%] | 1 |
53+
| Regressions ❌ <br /> (secondary) | 0.5% | [0.3%, 0.7%] | 10 |
54+
| Improvements ✅ <br /> (primary) | - | - | 0 |
55+
| Improvements ✅ <br /> (secondary) | - | - | 0 |
56+
| All ❌✅ (primary) | 0.2% | [0.2%, 0.2%] | 1 |
57+
58+
* The 0.2% hit to primary benchmark serde_derive check-incr_unchanged is easily justified by the feature addition here.
59+
* The more interesting question is 44 primary benchmarks saw a regression to their binary size. However, the only one of those of note, in my opinion, is ripgrep, which suffered a 0.43% increase to binary size on various opt scenarios.
60+
* marked as triaged.
61+
62+
#### Improvements
63+
64+
Rollup of 6 pull requests [#111919](https://github.com/rust-lang/rust/pull/111919) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=c373194cb6d882dc455a588bcc29c92a96b50252&end=096309e6dc4378e175e524e963332d1a3830ed63&stat=instructions:u)
65+
66+
| (instructions:u) | mean | range | count |
67+
|:----------------------------------:|:-----:|:--------------:|:-----:|
68+
| Regressions ❌ <br /> (primary) | - | - | 0 |
69+
| Regressions ❌ <br /> (secondary) | - | - | 0 |
70+
| Improvements ✅ <br /> (primary) | -0.7% | [-0.7%, -0.6%] | 2 |
71+
| Improvements ✅ <br /> (secondary) | -0.1% | [-0.1%, -0.1%] | 2 |
72+
| All ❌✅ (primary) | -0.7% | [-0.7%, -0.6%] | 2 |
73+
74+
* a small improvement to serde_derive check-{full, incr-full} that seems like its not noise, not completely.
75+
76+
fix: :bug: etc/bash_complettion -> src/etc/... to avoid copy error [#110906](https://github.com/rust-lang/rust/pull/110906) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=eb9da7bfa375ad58bcb946115f3191a2756785e5&end=d300bffa4f0036e9138ef752610d08fc63f87a77&stat=instructions:u)
77+
78+
| (instructions:u) | mean | range | count |
79+
|:----------------------------------:|:-----:|:--------------:|:-----:|
80+
| Regressions ❌ <br /> (primary) | - | - | 0 |
81+
| Regressions ❌ <br /> (secondary) | - | - | 0 |
82+
| Improvements ✅ <br /> (primary) | -0.8% | [-0.8%, -0.7%] | 2 |
83+
| Improvements ✅ <br /> (secondary) | -0.5% | [-0.6%, -0.3%] | 6 |
84+
| All ❌✅ (primary) | -0.8% | [-0.8%, -0.7%] | 2 |
85+
86+
* lol helloworld check-{full, incr-unchanged} improved by [-0.80%, -0.74%].
87+
* based on the PR itself, we should consider this to be some confounding factor, not meaningful.
88+
89+
Rollup of 7 pull requests [#111960](https://github.com/rust-lang/rust/pull/111960) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=a2b1646c597329d0a25efa3889b66650f65de1de&end=0004b3b984b19646c1f78b09ba497b7bd6e882c1&stat=instructions:u)
90+
91+
| (instructions:u) | mean | range | count |
92+
|:----------------------------------:|:-----:|:--------------:|:-----:|
93+
| Regressions ❌ <br /> (primary) | - | - | 0 |
94+
| Regressions ❌ <br /> (secondary) | - | - | 0 |
95+
| Improvements ✅ <br /> (primary) | -0.5% | [-1.3%, -0.2%] | 65 |
96+
| Improvements ✅ <br /> (secondary) | -0.6% | [-1.2%, -0.2%] | 18 |
97+
| All ❌✅ (primary) | -0.5% | [-1.3%, -0.2%] | 65 |
98+
99+
* a lot of primary improvements here, mostly to incr-{unchanged, patched} scenarios
100+
* fired off rust-timer run on specific PR just to see if it was root cause of improvement.
101+
102+
103+
#### Mixed
104+
105+
Rollup of 7 pull requests [#111882](https://github.com/rust-lang/rust/pull/111882) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=52dd1cde59ee86e5d61469ee1befe09c132c777d&end=d5699874dc07d2dfb262d007293853f73c171f7e&stat=instructions:u)
106+
107+
| (instructions:u) | mean | range | count |
108+
|:----------------------------------:|:-----:|:--------------:|:-----:|
109+
| Regressions ❌ <br /> (primary) | 0.2% | [0.2%, 0.3%] | 5 |
110+
| Regressions ❌ <br /> (secondary) | - | - | 0 |
111+
| Improvements ✅ <br /> (primary) | -0.4% | [-0.7%, -0.2%] | 18 |
112+
| Improvements ✅ <br /> (secondary) | -0.3% | [-0.5%, -0.2%] | 9 |
113+
| All ❌✅ (primary) | -0.2% | [-0.7%, 0.3%] | 23 |
114+
115+
* regressions are to bitmaps {{check, debug}-full, {check, debug, opt}-incr-full}.
116+
* improvements clearly outweigh regressions here
117+
* marked as triaged
118+
119+
Preprocess and cache dominator tree [#111673](https://github.com/rust-lang/rust/pull/111673) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=b3cbf7c8351dd48dc2e07a1cdc69620f8e40dd2f&end=97d328012b9ed9b7d481c40e84aa1f2c65b33ec8&stat=instructions:u)
120+
121+
| (instructions:u) | mean | range | count |
122+
|:----------------------------------:|:-----:|:--------------:|:-----:|
123+
| Regressions ❌ <br /> (primary) | 0.3% | [0.2%, 0.4%] | 3 |
124+
| Regressions ❌ <br /> (secondary) | 0.3% | [0.2%, 0.4%] | 7 |
125+
| Improvements ✅ <br /> (primary) | - | - | 0 |
126+
| Improvements ✅ <br /> (secondary) | -1.2% | [-1.2%, -1.2%] | 3 |
127+
| All ❌✅ (primary) | 0.3% | [0.2%, 0.4%] | 3 |
128+
129+
* primary benchmarks libc {check, debug}-full and bitmaps check-full regressed a little.
130+
* this pays a bit of upfront cost to avoid a O(n^2) pathology in other planned code.
131+
* marked as triaged.
132+
133+
rustc_privacy: Cleanups and perf improvements to `EmbargoVisitor` [#111260](https://github.com/rust-lang/rust/pull/111260) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=97d328012b9ed9b7d481c40e84aa1f2c65b33ec8&end=c373194cb6d882dc455a588bcc29c92a96b50252&stat=instructions:u)
134+
135+
| (instructions:u) | mean | range | count |
136+
|:----------------------------------:|:-----:|:--------------:|:-----:|
137+
| Regressions ❌ <br /> (primary) | - | - | 0 |
138+
| Regressions ❌ <br /> (secondary) | 0.4% | [0.3%, 0.6%] | 9 |
139+
| Improvements ✅ <br /> (primary) | -0.4% | [-1.3%, -0.1%] | 67 |
140+
| Improvements ✅ <br /> (secondary) | -0.4% | [-0.6%, -0.2%] | 15 |
141+
| All ❌✅ (primary) | -0.4% | [-1.3%, -0.1%] | 67 |
142+
143+
* already marked as triaged
144+
145+
#### Untriaged Pull Requests
146+
147+
- [#112083 Make `TrustedStep` require `Copy`](https://github.com/rust-lang/rust/pull/112083)
148+
- [#112016 Rollup of 6 pull requests](https://github.com/rust-lang/rust/pull/112016)
149+
- [#112001 Enable MatchBranchSimplification](https://github.com/rust-lang/rust/pull/112001)
150+
- [#111882 Rollup of 7 pull requests](https://github.com/rust-lang/rust/pull/111882)
151+
- [#111869 Rollup of 6 pull requests](https://github.com/rust-lang/rust/pull/111869)
152+
- [#111813 MIR: opt-in normalization of `BasicBlock` and `Local` numbering](https://github.com/rust-lang/rust/pull/111813)
153+
- [#111673 Preprocess and cache dominator tree](https://github.com/rust-lang/rust/pull/111673)
154+
- [#111524 `ascii::Char`-ify the escaping code in `core`](https://github.com/rust-lang/rust/pull/111524)
155+
- [#111425 Populate effective visibilities in `rustc_privacy` (take 2)](https://github.com/rust-lang/rust/pull/111425)
156+
- [#111364 Remove the ThinLTO CU hack](https://github.com/rust-lang/rust/pull/111364)
157+
- [#111311 Rollup of 7 pull requests](https://github.com/rust-lang/rust/pull/111311)
158+
- [#111306 Update hashbrown from 0.12.3 to 0.13.1 for std](https://github.com/rust-lang/rust/pull/111306)
159+
- [#111221 Combine three generalizer implementations](https://github.com/rust-lang/rust/pull/111221)
160+
- [#111007 Disable nrvo mir opt](https://github.com/rust-lang/rust/pull/111007)
161+
- [#110967 Rollup of 8 pull requests](https://github.com/rust-lang/rust/pull/110967)
162+
- [#110546 Rollup of 10 pull requests](https://github.com/rust-lang/rust/pull/110546)
163+
- [#110542 resolve: Remove `module_children_untracked`](https://github.com/rust-lang/rust/pull/110542)
164+
- [#110440 Rollup of 7 pull requests](https://github.com/rust-lang/rust/pull/110440)
165+
- [#110012 Rollup of 7 pull requests](https://github.com/rust-lang/rust/pull/110012)
166+
- [#109900 Only enable ConstProp at mir-opt-level >= 2.](https://github.com/rust-lang/rust/pull/109900)
167+
- [#109732 Uplift `clippy::{drop,forget}_{ref,copy}` lints](https://github.com/rust-lang/rust/pull/109732)
168+
- [#109692 Rollup of 8 pull requests](https://github.com/rust-lang/rust/pull/109692)
169+
- [#109588 Alloc `hir::Lit` in an arena to remove the destructor from `Expr`](https://github.com/rust-lang/rust/pull/109588)
170+
- [#109247 Permit MIR inlining without #[inline]](https://github.com/rust-lang/rust/pull/109247)
171+
- [#109097 Rollup of 9 pull requests](https://github.com/rust-lang/rust/pull/109097)
172+
- [#108934 Rollup of 8 pull requests](https://github.com/rust-lang/rust/pull/108934)
173+
- [#108872 Strengthen state tracking in const-prop](https://github.com/rust-lang/rust/pull/108872)
174+
- [#108830 Treat projections with infer as placeholder during fast reject in new solver](https://github.com/rust-lang/rust/pull/108830)
175+
- [#108587 Rollup of 10 pull requests](https://github.com/rust-lang/rust/pull/108587)
176+
- [#108080 Add a builtin `FnPtr` trait that is implemented for all function pointers](https://github.com/rust-lang/rust/pull/108080)

0 commit comments

Comments
 (0)