Skip to content

Commit 04331d2

Browse files
authored
Merge pull request #2335 from Kobzol/triage-2025-11-25
Add 2025-11-25 triage
2 parents 03d5941 + abaa823 commit 04331d2

File tree

1 file changed

+128
-0
lines changed

1 file changed

+128
-0
lines changed

triage/2025/2025-11-25.md

Lines changed: 128 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,128 @@
1+
# 2025-11-25 Triage Log
2+
3+
Only a handful of performance-related changes landed this week. The largest one was changing the default name mangling scheme in nightly to the v0 version, which produces slightly larger symbol names, so it had a small negative effect on binary sizes and compilation time.
4+
5+
Triage done by **@kobzol**.
6+
Revision range: [6159a440..b64df9d1](https://perf.rust-lang.org/?start=6159a44067ebce42b38f062cc7df267a1348e092&end=b64df9d1012f2482b54a4d959548cf8fc67e820c&absolute=false&stat=instructions%3Au)
7+
8+
**Summary**:
9+
10+
| (instructions:u) | mean | range | count |
11+
|:----------------------------------:|:-----:|:--------------:|:-----:|
12+
| Regressions ❌ <br /> (primary) | 0.9% | [0.3%, 2.7%] | 48 |
13+
| Regressions ❌ <br /> (secondary) | 0.9% | [0.2%, 2.1%] | 25 |
14+
| Improvements ✅ <br /> (primary) | -0.5% | [-6.8%, -0.1%] | 33 |
15+
| Improvements ✅ <br /> (secondary) | -0.5% | [-1.4%, -0.1%] | 53 |
16+
| All ❌✅ (primary) | 0.4% | [-6.8%, 2.7%] | 81 |
17+
18+
19+
1 Regression, 2 Improvements, 5 Mixed; 1 of them in rollups
20+
28 artifact comparisons made in total
21+
22+
#### Regressions
23+
24+
Turn moves into copies after copy propagation [#147804](https://github.com/rust-lang/rust/pull/147804) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=23f708107b459ed551a860ef0bf8b61bc80b48b4&end=122cbd043833a1d7540cc5f99c458bfca2d3c525&stat=instructions:u)
25+
26+
| (instructions:u) | mean | range | count |
27+
|:----------------------------------:|:----:|:------------:|:-----:|
28+
| Regressions ❌ <br /> (primary) | 0.6% | [0.1%, 0.9%] | 6 |
29+
| Regressions ❌ <br /> (secondary) | 0.8% | [0.8%, 0.8%] | 1 |
30+
| Improvements ✅ <br /> (primary) | - | - | 0 |
31+
| Improvements ✅ <br /> (secondary) | - | - | 0 |
32+
| All ❌✅ (primary) | 0.6% | [0.1%, 0.9%] | 6 |
33+
34+
- The perf. regression was deemed acceptable, as this fixes miscompilations.
35+
- Marked as triaged.
36+
37+
#### Improvements
38+
39+
Bump compiler dependencies [#148831](https://github.com/rust-lang/rust/pull/148831) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=27b076af7e3e7a363975443d81dfa9ecee5a74ec&end=5934b0655768a45aad237a704995780276b91261&stat=instructions:u)
40+
41+
| (instructions:u) | mean | range | count |
42+
|:----------------------------------:|:-----:|:--------------:|:-----:|
43+
| Regressions ❌ <br /> (primary) | - | - | 0 |
44+
| Regressions ❌ <br /> (secondary) | - | - | 0 |
45+
| Improvements ✅ <br /> (primary) | -0.3% | [-0.6%, -0.1%] | 27 |
46+
| Improvements ✅ <br /> (secondary) | -0.4% | [-1.3%, -0.1%] | 36 |
47+
| All ❌✅ (primary) | -0.3% | [-0.6%, -0.1%] | 27 |
48+
49+
50+
Rollup of 9 pull requests [#149222](https://github.com/rust-lang/rust/pull/149222) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=4b1b6dde0c15243857165672a1c616a4523ef32a&end=94b49fd998d6723e0a9240a7cff5f9df37b84dd8&stat=instructions:u)
51+
52+
| (instructions:u) | mean | range | count |
53+
|:----------------------------------:|:-----:|:--------------:|:-----:|
54+
| Regressions ❌ <br /> (primary) | - | - | 0 |
55+
| Regressions ❌ <br /> (secondary) | - | - | 0 |
56+
| Improvements ✅ <br /> (primary) | -0.2% | [-0.2%, -0.2%] | 3 |
57+
| Improvements ✅ <br /> (secondary) | - | - | 0 |
58+
| All ❌✅ (primary) | -0.2% | [-0.2%, -0.2%] | 3 |
59+
60+
61+
#### Mixed
62+
63+
Update wasm-related dependencies in CI [#149037](https://github.com/rust-lang/rust/pull/149037) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=6159a44067ebce42b38f062cc7df267a1348e092&end=a591113c0a2b7755514c47bde211fdb92d1d7002&stat=instructions:u)
64+
65+
| (instructions:u) | mean | range | count |
66+
|:----------------------------------:|:-----:|:--------------:|:-----:|
67+
| Regressions ❌ <br /> (primary) | 0.4% | [0.4%, 0.4%] | 1 |
68+
| Regressions ❌ <br /> (secondary) | 0.5% | [0.2%, 0.9%] | 9 |
69+
| Improvements ✅ <br /> (primary) | -2.8% | [-2.8%, -2.8%] | 1 |
70+
| Improvements ✅ <br /> (secondary) | -0.1% | [-0.1%, -0.1%] | 1 |
71+
| All ❌✅ (primary) | -1.2% | [-2.8%, 0.4%] | 2 |
72+
73+
- Noise.
74+
- Already marked as triaged.
75+
76+
sess: default to v0 symbol mangling on nightly [#89917](https://github.com/rust-lang/rust/pull/89917) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=d2f887349fe3ea079a4f89b020ce6df1993e1e06&end=683dd08db5808c41baceef49368fc82a6c4767bb&stat=instructions:u)
77+
78+
| (instructions:u) | mean | range | count |
79+
|:----------------------------------:|:-----:|:--------------:|:-----:|
80+
| Regressions ❌ <br /> (primary) | 0.7% | [0.2%, 1.5%] | 31 |
81+
| Regressions ❌ <br /> (secondary) | 0.7% | [0.2%, 1.6%] | 14 |
82+
| Improvements ✅ <br /> (primary) | -0.4% | [-0.4%, -0.4%] | 1 |
83+
| Improvements ✅ <br /> (secondary) | -0.2% | [-0.6%, -0.1%] | 6 |
84+
| All ❌✅ (primary) | 0.7% | [-0.4%, 1.5%] | 32 |
85+
86+
- This PR caused binary size regressions, which is expected, as the v0 mangling scheme produces larger symbols than the legacy mangling scheme, in general.
87+
- The compile-time regressions were likely caused by the same thing, more symbol string handling and more time spent in LLVM due to processing longer symbols.
88+
- Marked as triaged.
89+
90+
See if this is the time we can remove `layout::size_align` [#149109](https://github.com/rust-lang/rust/pull/149109) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=7281a3bc4b89a010aed05528d648450feb8b69d3&end=53732d5e076329a62f71d3c6901886ce8a71e812&stat=instructions:u)
91+
92+
| (instructions:u) | mean | range | count |
93+
|:----------------------------------:|:-----:|:--------------:|:-----:|
94+
| Regressions ❌ <br /> (primary) | - | - | 0 |
95+
| Regressions ❌ <br /> (secondary) | 0.4% | [0.1%, 0.6%] | 4 |
96+
| Improvements ✅ <br /> (primary) | - | - | 0 |
97+
| Improvements ✅ <br /> (secondary) | -0.7% | [-1.3%, -0.2%] | 8 |
98+
| All ❌✅ (primary) | - | - | 0 |
99+
100+
- Just noise returning to steady state.
101+
- Already marked as triaged.
102+
103+
library: upgrade to hashbrown v0.16.1 [#149159](https://github.com/rust-lang/rust/pull/149159) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=af17d59d71cd344fb34caab3e96c88b7c137f872&end=1dd43f247e6ec20a84dd017e4665266fa65e3a89&stat=instructions:u)
104+
105+
| (instructions:u) | mean | range | count |
106+
|:----------------------------------:|:-----:|:--------------:|:-----:|
107+
| Regressions ❌ <br /> (primary) | 0.7% | [0.4%, 1.4%] | 4 |
108+
| Regressions ❌ <br /> (secondary) | 1.5% | [1.5%, 1.5%] | 1 |
109+
| Improvements ✅ <br /> (primary) | -0.2% | [-0.2%, -0.2%] | 2 |
110+
| Improvements ✅ <br /> (secondary) | -0.3% | [-0.5%, -0.1%] | 25 |
111+
| All ❌✅ (primary) | 0.4% | [-0.2%, 1.4%] | 6 |
112+
113+
- More improvements than regressions.
114+
- Marked as triaged.
115+
116+
Fix MaybeUninit codegen using GVN [#147827](https://github.com/rust-lang/rust/pull/147827) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=122cbd043833a1d7540cc5f99c458bfca2d3c525&end=e9acbd99d384280874129fb7fa0da9faeae0d051&stat=instructions:u)
117+
118+
| (instructions:u) | mean | range | count |
119+
|:----------------------------------:|:-----:|:--------------:|:-----:|
120+
| Regressions ❌ <br /> (primary) | 0.1% | [0.1%, 0.1%] | 1 |
121+
| Regressions ❌ <br /> (secondary) | 0.3% | [0.1%, 0.5%] | 6 |
122+
| Improvements ✅ <br /> (primary) | -7.3% | [-7.3%, -7.3%] | 1 |
123+
| Improvements ✅ <br /> (secondary) | - | - | 0 |
124+
| All ❌✅ (primary) | -3.6% | [-7.3%, 0.1%] | 2 |
125+
126+
- Tiny regressions on secondary benchmarks, but a large (and real) win on the cranelift-codegen opt benchmark.
127+
- This should ideally produce better codegen.
128+
- Marked as triaged.

0 commit comments

Comments
 (0)