You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
| All ❌✅ (primary) | -0.9% |[-17.9%, 12.2%]| 138 |
17
23
18
24
19
-
4 Regressions, 1 Improvements, 4 Mixed; ??? of them in rollups
25
+
4 Regressions, 1 Improvements, 4 Mixed; 3 of them in rollups
20
26
84 artifact comparisons made in total
21
27
22
28
#### Regressions
@@ -31,6 +37,9 @@ Rollup of 7 pull requests [#116605](https://github.com/rust-lang/rust/pull/11660
31
37
| Improvements ✅ <br /> (secondary) | - | - | 0 |
32
38
| All ❌✅ (primary) | 0.4% |[0.2%, 0.6%]| 7 |
33
39
40
+
* solely rustdoc regression
41
+
* believed to be caused by [PR 109422](https://github.com/rust-lang/rust/pull/109422) "rustdoc-search: add impl disambiguator to duplicate assoc items"
42
+
* already marked as triaged
34
43
35
44
Optimize `librustc_driver.so` with BOLT [#116352](https://github.com/rust-lang/rust/pull/116352)[(Comparison Link)](https://perf.rust-lang.org/compare.html?start=ee8c9d3c34719a129f280cd91ba5d324017bb02b&end=c543b6f3516767150af84d94c14a27b19d4b0291&stat=instructions:u)
36
45
@@ -42,6 +51,9 @@ Optimize `librustc_driver.so` with BOLT [#116352](https://github.com/rust-lang/
* primary instruction-count regressions were restricted to helloworld and html5ever
55
+
* As noted in comment by Kobzol, the instruction counts regressed for many benchmarks, but the [cycle counts](https://perf.rust-lang.org/compare.html?start=ee8c9d3c34719a129f280cd91ba5d324017bb02b&end=c543b6f3516767150af84d94c14a27b19d4b0291&stat=cycles:u) solely improved, significantly so, and bootstrap time improved (628.052s -> 623.517s (-0.72%)).
56
+
* already marked as triaged
45
57
46
58
Rollup of 3 pull requests [#116742](https://github.com/rust-lang/rust/pull/116742)[(Comparison Link)](https://perf.rust-lang.org/compare.html?start=c543b6f3516767150af84d94c14a27b19d4b0291&end=e292fec36880f48101bda4054be37097312e73c0&stat=instructions:u)
47
59
@@ -53,6 +65,9 @@ Rollup of 3 pull requests [#116742](https://github.com/rust-lang/rust/pull/11674
53
65
| Improvements ✅ <br /> (secondary) | - | - | 0 |
54
66
| All ❌✅ (primary) | 0.3% |[0.3%, 0.4%]| 3 |
55
67
68
+
* Regressions are solely to bitmaps full scenarios.
69
+
* Looks like a blip (i.e. noise) based on the graph over time.
70
+
* marking as triaged.
56
71
57
72
don't UB on dangling ptr deref, instead check inbounds on projections [#114330](https://github.com/rust-lang/rust/pull/114330)[(Comparison Link)](https://perf.rust-lang.org/compare.html?start=a00c09e9d80b763fb29206b47b04e1d99c3ace96&end=e7bdc5f9f869219e8d20060b42a09ea10a837851&stat=instructions:u)
58
73
@@ -64,6 +79,11 @@ don't UB on dangling ptr deref, instead check inbounds on projections [#114330](
64
79
| Improvements ✅ <br /> (secondary) | - | - | 0 |
65
80
| All ❌✅ (primary) | - | - | 0 |
66
81
82
+
* From skimming the PR, one can see that the PR author (RalfJung) iterated on this to identify a solution that would minimize regressions.
83
+
* As noted by the PR author, only secondary benchmarks were affected.
84
+
* Also, while instruction-counts regressed, the [cycle-counts](https://perf.rust-lang.org/compare.html?start=a00c09e9d80b763fb29206b47b04e1d99c3ace96&end=e7bdc5f9f869219e8d20060b42a09ea10a837851&stat=cycles%3Au)
85
+
did not, at least not enough to pass our noise threshold.
86
+
* marking as triaged.
67
87
68
88
#### Improvements
69
89
@@ -77,6 +97,7 @@ optimize zipping over array iterators [#115515](https://github.com/rust-lang/rus
77
97
| Improvements ✅ <br /> (secondary) | - | - | 0 |
78
98
| All ❌✅ (primary) | -0.3% |[-0.4%, -0.2%]| 3 |
79
99
100
+
* A small win from a PR addressing user-filed performance regression, namely [issue #115339](https://github.com/rust-lang/rust/issues/115339), "Performance regression of array::IntoIter vs slice::Iter"
80
101
81
102
#### Mixed
82
103
@@ -90,6 +111,9 @@ Also consider call and yield as MIR SSA. [#113915](https://github.com/rust-lang/
* The try perf run had sole primary regression of unicode-normalization-0.1.19 opt-full (1.19%), while the perf run against master had sole primary regression of exa-0.10.1 opt-full (3.90%).
115
+
* The exa regression has persisted forward (i.e. it is not transient noise).
116
+
* It was already been marked as triaged, as the performance changes were deemed a wash, apart from object code sizes which saw "small but clear" improvement.
93
117
94
118
Rollup of 5 pull requests [#116640](https://github.com/rust-lang/rust/pull/116640)[(Comparison Link)](https://perf.rust-lang.org/compare.html?start=c1691db366c0f2e2341c60377c248ca2d9335076&end=475c71da0710fd1d40c046f9cee04b733b5b2b51&stat=instructions:u)
95
119
@@ -101,6 +125,9 @@ Rollup of 5 pull requests [#116640](https://github.com/rust-lang/rust/pull/11664
* the primary regressions were to cranelift-codegen-0.82.1 and cargo-0.60.0 in various incremental settings (mostly check builds)
143
+
* the large (>5%) secondary regressions are all to match-stress.
144
+
* the above cases were regressions for instruction-counts, but the cycle-counts didn't get marked as regressed in *any* of the same cases.
145
+
* in all cases, the performance loss from these regressions was subsequently recovered (or masked) by [PR 116505](https://github.com/rust-lang/rust/pull/116505) "Automatically enable cross-crate inlining for small functions".
146
+
(I don't know if that's actually related or just an awesome change that bought so much performance that it masked this problem).
147
+
* Since the match-stress one was relatively large, I looked at the
148
+
self-profile results in the [details](https://perf.rust-lang.org/detailed-query.html?commit=e20cb7702117f1ad8127a16406ba9edd230c4f65&benchmark=match-stress-check&scenario=full&base_commit=df4379b4eb5357263f0cf75475953f9b5c48c31f)
149
+
which indicates a change in the delta(time) for match-stress might be due to new overheads in `check_match` and `mir_borrowck`.
150
+
* But this is strange; I cannot tell how this PR could have affected codegen, which would be the only way I could imagine those functions being impacted.
151
+
* Not marking as triaged for now; this mystery might be worth looking into a bit more. (But then again, the only significant regression was to a secondary stress test, so maybe its not worth spending time on.)
115
152
116
153
Automatically enable cross-crate inlining for small functions [#116505](https://github.com/rust-lang/rust/pull/116505)[(Comparison Link)](https://perf.rust-lang.org/compare.html?start=ca89f732ec0f910fc92111a45dd7e6829baa9d4b&end=5d5edf0248d967baa6ac5cbea09b91c7c9947942&stat=instructions:u)
117
154
@@ -123,6 +160,9 @@ Automatically enable cross-crate inlining for small functions [#116505](https://
0 commit comments