Skip to content

Commit 1428985

Browse files
authored
Merge pull request #1785 from Kobzol/triage-2023-12-26
Triage 2023 12 26
2 parents 59a4f6c + 73d96e7 commit 1428985

File tree

1 file changed

+207
-0
lines changed

1 file changed

+207
-0
lines changed

triage/2023-12-26.md

+207
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,207 @@
1+
# 2023-12-26 Triage Log
2+
3+
Some of the recent noise swings have been appearing again this week, but luckily
4+
less often than before. There were a few actual regressions, but most of them
5+
were localized to a single stress test. On the other hand, there were a few very
6+
nice wins across the board, especially for check and incremental builds, primarily
7+
thanks to [#118824](https://github.com/rust-lang/rust/pull/118824) and
8+
[#119265](https://github.com/rust-lang/rust/pull/119265).
9+
10+
Triage done by **@kobzol**.
11+
Revision range: [bf9229a2e366b4c311f059014a4aa08af16de5d8..1ab783112ab4e4807304dbd249b39771246013ef](https://perf.rust-lang.org/?start=bf9229a2e366b4c311f059014a4aa08af16de5d8&end=1ab783112ab4e4807304dbd249b39771246013ef&absolute=false&stat=instructions%3Au)
12+
13+
**Summary**:
14+
15+
| (instructions:u) | mean | range | count |
16+
|:----------------------------------:|:-----:|:--------------:|:-----:|
17+
| Regressions ❌ <br /> (primary) | 0.6% | [0.6%, 0.6%] | 1 |
18+
| Regressions ❌ <br /> (secondary) | 2.5% | [0.3%, 4.2%] | 10 |
19+
| Improvements ✅ <br /> (primary) | -0.8% | [-3.3%, -0.1%] | 180 |
20+
| Improvements ✅ <br /> (secondary) | -1.2% | [-5.5%, -0.2%] | 109 |
21+
| All ❌✅ (primary) | -0.8% | [-3.3%, 0.6%] | 181 |
22+
23+
24+
5 Regressions, 7 Improvements, 2 Mixed; 1 of them in rollups
25+
58 artifact comparisons made in total
26+
27+
#### Regressions
28+
29+
Make exhaustiveness usable outside of rustc [#118842](https://github.com/rust-lang/rust/pull/118842) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=c9c9f527e373efbb755e88661aaf012ad6a2d17c&end=3a539c08891a422d34beb32d2556a08ea0357b7d&stat=instructions:u)
30+
31+
| (instructions:u) | mean | range | count |
32+
|:----------------------------------:|:-----:|:--------------:|:-----:|
33+
| Regressions ❌ <br /> (primary) | - | - | 0 |
34+
| Regressions ❌ <br /> (secondary) | 0.9% | [0.9%, 1.0%] | 6 |
35+
| Improvements ✅ <br /> (primary) | - | - | 0 |
36+
| Improvements ✅ <br /> (secondary) | -0.4% | [-0.4%, -0.4%] | 1 |
37+
| All ❌✅ (primary) | - | - | 0 |
38+
39+
* This PR enables the use of exhaustiveness checking e.g. in rust-analyzer, which is part of the
40+
"librarification effort". The small regression in a single stress-test benchmark is worth it.
41+
42+
mark ty::Const::Error when meet unsupport ty for const generic params [#117176](https://github.com/rust-lang/rust/pull/117176) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=cf6427373b8b6d4b8efed2087fb9df5149e69e67&end=08cc634f1a26f30801daa1cbe7b866b12aaf1edd&stat=instructions:u)
43+
44+
| (instructions:u) | mean | range | count |
45+
|:----------------------------------:|:----:|:------------:|:-----:|
46+
| Regressions ❌ <br /> (primary) | 0.7% | [0.6%, 0.7%] | 4 |
47+
| Regressions ❌ <br /> (secondary) | 0.4% | [0.2%, 0.6%] | 19 |
48+
| Improvements ✅ <br /> (primary) | - | - | 0 |
49+
| Improvements ✅ <br /> (secondary) | - | - | 0 |
50+
| All ❌✅ (primary) | 0.7% | [0.6%, 0.7%] | 4 |
51+
52+
* This PR only added a test, so this has to be noise.
53+
* Already marked as triaged by @jackh726
54+
55+
Exhaustiveness: Improve complexity on some wide matches [#118796](https://github.com/rust-lang/rust/pull/118796) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=ebb821f625db3cbc77c675326165b8dfc3d7a2be&end=1a086e49f14dd019a6ee147b6a9a72b32ac3fe2b&stat=instructions:u)
56+
57+
| (instructions:u) | mean | range | count |
58+
|:----------------------------------:|:-----:|:--------------:|:-----:|
59+
| Regressions ❌ <br /> (primary) | - | - | 0 |
60+
| Regressions ❌ <br /> (secondary) | 2.9% | [2.6%, 3.1%] | 6 |
61+
| Improvements ✅ <br /> (primary) | - | - | 0 |
62+
| Improvements ✅ <br /> (secondary) | -1.3% | [-1.3%, -1.3%] | 1 |
63+
| All ❌✅ (primary) | - | - | 0 |
64+
65+
* This PR fixed a potential hang in the compiler, the regression of the match checking stress-test
66+
is unfortunate, but it's more important to avoid the pathological case.
67+
* Already marked as triaged by @apiraino
68+
69+
Subtree sync for rustc_codegen_cranelift [#119278](https://github.com/rust-lang/rust/pull/119278) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=1a086e49f14dd019a6ee147b6a9a72b32ac3fe2b&end=f736079c3caceca1adfd75822c754e1e31bddc3d&stat=instructions:u)
70+
71+
| (instructions:u) | mean | range | count |
72+
|:----------------------------------:|:----:|:------------:|:-----:|
73+
| Regressions ❌ <br /> (primary) | 0.9% | [0.8%, 0.9%] | 3 |
74+
| Regressions ❌ <br /> (secondary) | 0.5% | [0.3%, 0.7%] | 20 |
75+
| Improvements ✅ <br /> (primary) | - | - | 0 |
76+
| Improvements ✅ <br /> (secondary) | - | - | 0 |
77+
| All ❌✅ (primary) | 0.9% | [0.8%, 0.9%] | 3 |
78+
79+
* Noise
80+
81+
fix ICE when using raw ptr in a pattern [#119274](https://github.com/rust-lang/rust/pull/119274) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=bf8716f1cd6416266807706bcae0ecb2e51c9d4a&end=471dcbdb0910bcacbef6732e5ec1dab0dcd6b999&stat=instructions:u)
82+
83+
| (instructions:u) | mean | range | count |
84+
|:----------------------------------:|:----:|:------------:|:-----:|
85+
| Regressions ❌ <br /> (primary) | 0.7% | [0.7%, 0.7%] | 1 |
86+
| Regressions ❌ <br /> (secondary) | 0.4% | [0.3%, 0.5%] | 6 |
87+
| Improvements ✅ <br /> (primary) | - | - | 0 |
88+
| Improvements ✅ <br /> (secondary) | - | - | 0 |
89+
| All ❌✅ (primary) | 0.7% | [0.7%, 0.7%] | 1 |
90+
91+
* Noise
92+
93+
#### Improvements
94+
95+
fast path for declared_generic_bounds_from_env [#119084](https://github.com/rust-lang/rust/pull/119084) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=3a539c08891a422d34beb32d2556a08ea0357b7d&end=57ad5058d643d06c0e76bb85442ff9244d966f34&stat=instructions:u)
96+
97+
| (instructions:u) | mean | range | count |
98+
|:----------------------------------:|:-----:|:--------------:|:-----:|
99+
| Regressions ❌ <br /> (primary) | - | - | 0 |
100+
| Regressions ❌ <br /> (secondary) | - | - | 0 |
101+
| Improvements ✅ <br /> (primary) | -1.9% | [-2.9%, -0.2%] | 8 |
102+
| Improvements ✅ <br /> (secondary) | - | - | 0 |
103+
| All ❌✅ (primary) | -1.9% | [-2.9%, -0.2%] | 8 |
104+
105+
* Very nice improvement to diesel.
106+
107+
use Vec for region constraints instead of BTreeMap [#118824](https://github.com/rust-lang/rust/pull/118824) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=398fd92e177cd1a47ae1bb146506953e87e73d30&end=d6d7a93866f2ffcfb51828b8859bdad760b54ce0&stat=instructions:u)
108+
109+
| (instructions:u) | mean | range | count |
110+
|:----------------------------------:|:-----:|:--------------:|:-----:|
111+
| Regressions ❌ <br /> (primary) | - | - | 0 |
112+
| Regressions ❌ <br /> (secondary) | - | - | 0 |
113+
| Improvements ✅ <br /> (primary) | -0.5% | [-1.3%, -0.2%] | 39 |
114+
| Improvements ✅ <br /> (secondary) | -0.7% | [-1.7%, -0.2%] | 29 |
115+
| All ❌✅ (primary) | -0.5% | [-1.3%, -0.2%] | 39 |
116+
117+
* Nice improvements to check builds across the board.
118+
119+
Rollup of 6 pull requests [#119237](https://github.com/rust-lang/rust/pull/119237) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=495203bf61efabecc2c460be38e1eb0f9952601b&end=c03d978a4bcb7c01d8cdf80bd7600b27e2d21588&stat=instructions:u)
120+
121+
| (instructions:u) | mean | range | count |
122+
|:----------------------------------:|:-----:|:--------------:|:-----:|
123+
| Regressions ❌ <br /> (primary) | - | - | 0 |
124+
| Regressions ❌ <br /> (secondary) | - | - | 0 |
125+
| Improvements ✅ <br /> (primary) | -0.5% | [-0.8%, -0.3%] | 17 |
126+
| Improvements ✅ <br /> (secondary) | -0.4% | [-0.6%, -0.2%] | 10 |
127+
| All ❌✅ (primary) | -0.5% | [-0.8%, -0.3%] | 17 |
128+
129+
* Nice win for type checking across several benchmarks. It's unclear which PR from the rollup
130+
has caused the wins though.
131+
132+
Stabilize ip_in_core feature [#119276](https://github.com/rust-lang/rust/pull/119276) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=f736079c3caceca1adfd75822c754e1e31bddc3d&end=e87ccb8676be9ab641849a2539b215d0c9027237&stat=instructions:u)
133+
134+
| (instructions:u) | mean | range | count |
135+
|:----------------------------------:|:-----:|:--------------:|:-----:|
136+
| Regressions ❌ <br /> (primary) | - | - | 0 |
137+
| Regressions ❌ <br /> (secondary) | - | - | 0 |
138+
| Improvements ✅ <br /> (primary) | -0.9% | [-0.9%, -0.8%] | 4 |
139+
| Improvements ✅ <br /> (secondary) | -0.5% | [-0.8%, -0.2%] | 21 |
140+
| All ❌✅ (primary) | -0.9% | [-0.9%, -0.8%] | 4 |
141+
142+
* This is just noise returning back to steady state.
143+
144+
Unify SourceFile::name_hash and StableSourceFileId [#119139](https://github.com/rust-lang/rust/pull/119139) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=e87ccb8676be9ab641849a2539b215d0c9027237&end=bf8716f1cd6416266807706bcae0ecb2e51c9d4a&stat=instructions:u)
145+
146+
| (instructions:u) | mean | range | count |
147+
|:----------------------------------:|:-----:|:--------------:|:-----:|
148+
| Regressions ❌ <br /> (primary) | - | - | 0 |
149+
| Regressions ❌ <br /> (secondary) | - | - | 0 |
150+
| Improvements ✅ <br /> (primary) | -0.2% | [-0.2%, -0.1%] | 3 |
151+
| Improvements ✅ <br /> (secondary) | -0.8% | [-0.9%, -0.6%] | 3 |
152+
| All ❌✅ (primary) | -0.2% | [-0.2%, -0.1%] | 3 |
153+
154+
* A few small wins for incremental benchmarks.
155+
156+
Fix display of warning block if it is first element of the top doc block [#119283](https://github.com/rust-lang/rust/pull/119283) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=471dcbdb0910bcacbef6732e5ec1dab0dcd6b999&end=b87f649a5de8496df7be2fd272da5f1d42d82087&stat=instructions:u)
157+
158+
| (instructions:u) | mean | range | count |
159+
|:----------------------------------:|:-----:|:--------------:|:-----:|
160+
| Regressions ❌ <br /> (primary) | - | - | 0 |
161+
| Regressions ❌ <br /> (secondary) | - | - | 0 |
162+
| Improvements ✅ <br /> (primary) | -0.7% | [-0.7%, -0.7%] | 2 |
163+
| Improvements ✅ <br /> (secondary) | -0.4% | [-0.6%, -0.3%] | 5 |
164+
| All ❌✅ (primary) | -0.7% | [-0.7%, -0.7%] | 2 |
165+
166+
* This PR only modified the UI and tests of rustdoc, so this is just noise.
167+
168+
Make closures carry their own ClosureKind [#119258](https://github.com/rust-lang/rust/pull/119258) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=2271c26e4a8e062bb00d709d0ccb5846e0c341b9&end=1ab783112ab4e4807304dbd249b39771246013ef&stat=instructions:u)
169+
170+
| (instructions:u) | mean | range | count |
171+
|:----------------------------------:|:-----:|:--------------:|:-----:|
172+
| Regressions ❌ <br /> (primary) | - | - | 0 |
173+
| Regressions ❌ <br /> (secondary) | - | - | 0 |
174+
| Improvements ✅ <br /> (primary) | -1.1% | [-1.1%, -1.1%] | 1 |
175+
| Improvements ✅ <br /> (secondary) | - | - | 0 |
176+
| All ❌✅ (primary) | -1.1% | [-1.1%, -1.1%] | 1 |
177+
178+
* This is probably just noise.
179+
180+
#### Mixed
181+
182+
add more niches to rawvec [#106790](https://github.com/rust-lang/rust/pull/106790) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=f704f3b93b1543cf504ecca0052f9f8531b1f61f&end=51c0db6a9118735190466d15432b5d8890bb09ee&stat=instructions:u)
183+
184+
| (instructions:u) | mean | range | count |
185+
|:----------------------------------:|:-----:|:--------------:|:-----:|
186+
| Regressions ❌ <br /> (primary) | 0.4% | [0.1%, 0.7%] | 20 |
187+
| Regressions ❌ <br /> (secondary) | 0.6% | [0.2%, 1.0%] | 2 |
188+
| Improvements ✅ <br /> (primary) | -0.4% | [-2.0%, -0.1%] | 27 |
189+
| Improvements ✅ <br /> (secondary) | -0.9% | [-5.3%, -0.2%] | 16 |
190+
| All ❌✅ (primary) | -0.1% | [-2.0%, 0.7%] | 47 |
191+
192+
* This PR enabled more optimization opportunities for LLVM, which could in theory help with
193+
program optimization, but it also caused some binary size increases and compile-time regressions.
194+
* Not marking as triaged yet.
195+
196+
Remove metadata decoding DefPathHash cache [#119265](https://github.com/rust-lang/rust/pull/119265) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=08cc634f1a26f30801daa1cbe7b866b12aaf1edd&end=ebb821f625db3cbc77c675326165b8dfc3d7a2be&stat=instructions:u)
197+
198+
| (instructions:u) | mean | range | count |
199+
|:----------------------------------:|:-----:|:--------------:|:-----:|
200+
| Regressions ❌ <br /> (primary) | 0.9% | [0.9%, 0.9%] | 1 |
201+
| Regressions ❌ <br /> (secondary) | - | - | 0 |
202+
| Improvements ✅ <br /> (primary) | -0.6% | [-2.1%, -0.2%] | 101 |
203+
| Improvements ✅ <br /> (secondary) | -1.2% | [-3.2%, -0.2%] | 65 |
204+
| All ❌✅ (primary) | -0.6% | [-2.1%, 0.9%] | 102 |
205+
206+
* Very nice check and incremental wins across the board.
207+
* The single regression is probably just noise returning back to steady state.

0 commit comments

Comments
 (0)