Skip to content

Commit 85d4fe5

Browse files
authored
Merge pull request #2256 from Kobzol/triage-2025-09-23
Add 2025-09-23 triage
2 parents 49c3fd2 + 8a95749 commit 85d4fe5

File tree

1 file changed

+138
-0
lines changed

1 file changed

+138
-0
lines changed

triage/2025/2025-09-23.md

Lines changed: 138 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,138 @@
1+
# 2025-09-23 Triage Log
2+
3+
Moving command-line argument quoting from C++ to Rust ([#146700](https://github.com/rust-lang/rust/pull/146700)) resulted in a nice performance
4+
win when dealing with many dependencies and large workspaces. A somewhat costly destination propagation
5+
compiler pass was enabled by default ([#142915](https://github.com/rust-lang/rust/pull/142915)), which resulted in some build time regressions,
6+
but should result in improved runtime performance. The rest of changes were small.
7+
8+
Triage done by **@kobzol**.
9+
Revision range: [52618eb3..ce4beebe](https://perf.rust-lang.org/?start=52618eb338609df44978b0ca4451ab7941fd1c7a&end=ce4beebecb77821734079cff47d8af08f9f27f11&absolute=false&stat=instructions%3Au)
10+
11+
**Summary**:
12+
13+
| (instructions:u) | mean | range | count |
14+
|:----------------------------------:|:-----:|:---------------:|:-----:|
15+
| Regressions ❌ <br /> (primary) | 0.3% | [0.1%, 1.9%] | 61 |
16+
| Regressions ❌ <br /> (secondary) | 0.6% | [0.1%, 3.4%] | 90 |
17+
| Improvements ✅ <br /> (primary) | -0.5% | [-1.9%, -0.2%] | 29 |
18+
| Improvements ✅ <br /> (secondary) | -1.3% | [-22.8%, -0.1%] | 71 |
19+
| All ❌✅ (primary) | 0.0% | [-1.9%, 1.9%] | 90 |
20+
21+
22+
1 Regression, 4 Improvements, 4 Mixed; 4 of them in rollups
23+
37 artifact comparisons made in total
24+
25+
#### Regressions
26+
27+
Rollup of 5 pull requests [#146698](https://github.com/rust-lang/rust/pull/146698) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=93117677d857bb7c3f12c9dc500d77839f8fb13d&end=4793ef5cf527339f072c39d129477ad5bb678f9e&stat=instructions:u)
28+
29+
| (instructions:u) | mean | range | count |
30+
|:----------------------------------:|:----:|:------------:|:-----:|
31+
| Regressions ❌ <br /> (primary) | 0.2% | [0.2%, 0.2%] | 2 |
32+
| Regressions ❌ <br /> (secondary) | 0.2% | [0.1%, 0.2%] | 16 |
33+
| Improvements ✅ <br /> (primary) | - | - | 0 |
34+
| Improvements ✅ <br /> (secondary) | - | - | 0 |
35+
| All ❌✅ (primary) | 0.2% | [0.2%, 0.2%] | 2 |
36+
37+
- From the perf. runs it looks like the tiny regressions are distributed amongst multiple PRs. Given that most of them are in secondary benchmarks, and those benchmarks were going a bit up and down recently, I don't think it's worth to dig deeper here.
38+
- Marked as triaged.
39+
40+
#### Improvements
41+
42+
Prevent ABI changes affect EnzymeAD [#142544](https://github.com/rust-lang/rust/pull/142544) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=4793ef5cf527339f072c39d129477ad5bb678f9e&end=97a987f14c5bd948f7ee8dba75999f104a6f03a7&stat=instructions:u)
43+
44+
| (instructions:u) | mean | range | count |
45+
|:----------------------------------:|:-----:|:--------------:|:-----:|
46+
| Regressions ❌ <br /> (primary) | - | - | 0 |
47+
| Regressions ❌ <br /> (secondary) | 0.2% | [0.0%, 0.3%] | 2 |
48+
| Improvements ✅ <br /> (primary) | -0.2% | [-0.2%, -0.2%] | 1 |
49+
| Improvements ✅ <br /> (secondary) | -0.2% | [-0.2%, -0.1%] | 18 |
50+
| All ❌✅ (primary) | -0.2% | [-0.2%, -0.2%] | 1 |
51+
52+
53+
Clippy subtree update [#146728](https://github.com/rust-lang/rust/pull/146728) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=0c0c58b8e453f552ebd7f3a1545acdd109de028c&end=7c275d09ea6b953d2cca169667184a7214bd14c7&stat=instructions:u)
54+
55+
| (instructions:u) | mean | range | count |
56+
|:----------------------------------:|:-----:|:--------------:|:-----:|
57+
| Regressions ❌ <br /> (primary) | - | - | 0 |
58+
| Regressions ❌ <br /> (secondary) | - | - | 0 |
59+
| Improvements ✅ <br /> (primary) | -2.9% | [-2.9%, -2.9%] | 1 |
60+
| Improvements ✅ <br /> (secondary) | - | - | 0 |
61+
| All ❌✅ (primary) | -2.9% | [-2.9%, -2.9%] | 1 |
62+
63+
64+
GVN: stop hashing opaque values [#145737](https://github.com/rust-lang/rust/pull/145737) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=2f4dfc753fd86c672aa4145940db075a8a149f17&end=e10aa8891182378de002bd71bf4d04181fb8231d&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) | -1.7% | [-1.9%, -1.5%] | 2 |
71+
| Improvements ✅ <br /> (secondary) | -1.4% | [-1.4%, -1.4%] | 1 |
72+
| All ❌✅ (primary) | -1.7% | [-1.9%, -1.5%] | 2 |
73+
74+
75+
cg_llvm: Move target machine command-line quoting from C++ to Rust [#146700](https://github.com/rust-lang/rust/pull/146700) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=59043567a5cf12800e1457c36ad6a6b0fa02c6b6&end=0be8e16088894483a7012c5026c3247c14a0c3c2&stat=instructions:u)
76+
77+
| (instructions:u) | mean | range | count |
78+
|:----------------------------------:|:-----:|:---------------:|:-----:|
79+
| Regressions ❌ <br /> (primary) | - | - | 0 |
80+
| Regressions ❌ <br /> (secondary) | - | - | 0 |
81+
| Improvements ✅ <br /> (primary) | -0.4% | [-0.6%, -0.2%] | 4 |
82+
| Improvements ✅ <br /> (secondary) | -3.0% | [-23.4%, -0.2%] | 16 |
83+
| All ❌✅ (primary) | -0.4% | [-0.6%, -0.2%] | 4 |
84+
85+
86+
#### Mixed
87+
88+
Rollup of 9 pull requests [#146614](https://github.com/rust-lang/rust/pull/146614) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=9d82de19dfae60e55c291f5f28e28cfc2c1b9630&end=8a1b39995e5b630c5872f5de5079f1f569bd5ac2&stat=instructions:u)
89+
90+
| (instructions:u) | mean | range | count |
91+
|:----------------------------------:|:-----:|:--------------:|:-----:|
92+
| Regressions ❌ <br /> (primary) | 0.2% | [0.2%, 0.2%] | 2 |
93+
| Regressions ❌ <br /> (secondary) | 3.7% | [3.0%, 4.2%] | 6 |
94+
| Improvements ✅ <br /> (primary) | - | - | 0 |
95+
| Improvements ✅ <br /> (secondary) | -0.2% | [-0.3%, -0.0%] | 6 |
96+
| All ❌✅ (primary) | 0.2% | [0.2%, 0.2%] | 2 |
97+
98+
- The regression in compile-time function evaluation was caused by [#146402](https://github.com/rust-lang/rust/pull/146402), which is a fix.
99+
- Marked as triaged.
100+
101+
Enable DestinationPropagation by default [#142915](https://github.com/rust-lang/rust/pull/142915) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=2ebb1263e3506412889410b567fa813ca3cb5c63&end=ce6daf3d5a5bffb2a00264197f92dc31608df0da&stat=instructions:u)
102+
103+
| (instructions:u) | mean | range | count |
104+
|:----------------------------------:|:-----:|:--------------:|:-----:|
105+
| Regressions ❌ <br /> (primary) | 0.3% | [0.1%, 1.1%] | 62 |
106+
| Regressions ❌ <br /> (secondary) | 0.4% | [0.1%, 1.6%] | 98 |
107+
| Improvements ✅ <br /> (primary) | -0.4% | [-1.7%, -0.1%] | 31 |
108+
| Improvements ✅ <br /> (secondary) | -0.7% | [-2.5%, -0.1%] | 60 |
109+
| All ❌✅ (primary) | 0.0% | [-1.7%, 1.1%] | 93 |
110+
111+
- The compile-time effects seem to be a wash, while this nicely reduced the binary size of the compiler itself, and is expected to improve runtime performance.
112+
- Marked as triaged.
113+
114+
Rollup of 8 pull requests [#146830](https://github.com/rust-lang/rust/pull/146830) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=dd7fda570040e8a736f7d8bc28ddd1b444aabc82&end=dfa22235d858086511bedc4acde9db1c045ffbac&stat=instructions:u)
115+
116+
| (instructions:u) | mean | range | count |
117+
|:----------------------------------:|:-----:|:--------------:|:-----:|
118+
| Regressions ❌ <br /> (primary) | 0.2% | [0.2%, 0.2%] | 1 |
119+
| Regressions ❌ <br /> (secondary) | 0.2% | [0.1%, 0.2%] | 4 |
120+
| Improvements ✅ <br /> (primary) | - | - | 0 |
121+
| Improvements ✅ <br /> (secondary) | -0.2% | [-0.3%, -0.1%] | 2 |
122+
| All ❌✅ (primary) | 0.2% | [0.2%, 0.2%] | 1 |
123+
124+
- There's one tiny regression on a primary check benchmark, it doesn't seem worth it to investigate further.
125+
- Marked as triaged.
126+
127+
Rollup of 9 pull requests [#146879](https://github.com/rust-lang/rust/pull/146879) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=9f32ccf35fb877270bc44a86a126440f04d676d0&end=29005cb128e6d447e6bd9c110c9a684665f95985&stat=instructions:u)
128+
129+
| (instructions:u) | mean | range | count |
130+
|:----------------------------------:|:-----:|:--------------:|:-----:|
131+
| Regressions ❌ <br /> (primary) | - | - | 0 |
132+
| Regressions ❌ <br /> (secondary) | 0.3% | [0.1%, 0.5%] | 2 |
133+
| Improvements ✅ <br /> (primary) | -0.2% | [-0.2%, -0.2%] | 1 |
134+
| Improvements ✅ <br /> (secondary) | -0.2% | [-0.2%, -0.2%] | 7 |
135+
| All ❌✅ (primary) | -0.2% | [-0.2%, -0.2%] | 1 |
136+
137+
- Seems like noise returning back, similar results to other rollups, just in the other direction.
138+
- Marked as triaged.

0 commit comments

Comments
 (0)