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
A fairly busy week which was to expected given that we've [adjusted our algorithm](https://github.com/rust-lang/rustc-perf/pull/956) for whether we label a change as a regression or not. Most regressions were relatively small, and only one has not yet been addressed in some way.
2 Regressions, 1 Improvements, 4 Mixed; ??? of them in rollups
9
+
3 Regressions, 2 Improvements, 2 Mixed; 0 of them in rollups
10
10
11
11
#### Regressions
12
12
13
13
encode `generics_of` for fields and ty params [#87815](https://github.com/rust-lang/rust/issues/87815)
14
14
- Moderate regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=2d10c2a3302d53e10a4ad3ac581103faaae9eeb6&end=c4c2986c499ee9440b7ae23bf5a62c6168e1ce17&stat=instructions:u) (up to 1.2% on `incr-unchanged` builds of `diesel`)
15
+
- While the regressions are fairly small, the largest ones seem to be happening in real-world crates like diesel, serde, and futures.
16
+
- The largest regressions seem to be in the `explicit_predicates_of` query which would seem to be directly impacted by this change.
17
+
- Left a [comment](https://github.com/rust-lang/rust/pull/87815#issuecomment-900465263) to see how we should address this issue.
15
18
16
19
17
20
Various refactorings of the TAIT infrastructure [#87587](https://github.com/rust-lang/rust/issues/87587)
18
21
- Moderate regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=47b41b7788a6f85c749049062f1e4eed497cd894&end=d488de82f30fd1dcb0220d57498638596622394e&stat=instructions:u) (up to 1.5% on `full` builds of `inflate`)
22
+
- The issue is [expected](https://github.com/rust-lang/rust/pull/87587#issuecomment-896754235) and is being monitored with a possible solution in the works.
23
+
24
+
25
+
Name the captured upvars for closures/generators in debuginfo [#85020](https://github.com/rust-lang/rust/issues/85020)
26
+
- Large regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=c6094fc7b9981d755abeb8c0e866a0f6315b3ec3&end=99efc51dae1dbe9d741707a7ddef84c29e654df5&stat=instructions:u) (up to 4.9% on `incr-patched: println` builds of `webrender-wrench`)
27
+
- This is a large regression in one benchmark, but it seems to be in codegen which this change would impact.
28
+
-[There is a comment](https://github.com/rust-lang/rust/pull/85020#issuecomment-898823772) justifying this as concerning but worth it given it only impacts one benchmark. I still believe this might be one worth keeping an eye on.
19
29
20
30
21
31
#### Improvements
@@ -24,16 +34,12 @@ Avoid using the `copy_nonoverlapping` wrapper through `mem::replace`. [#87827](h
24
34
- Large improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=e8c25f266349a68faa8c4fb68f5c1d5e4512790f&end=4e886d68766719a7fc1714c52a0e7e81929e8b8e&stat=instructions:u) (up to -2.2% on `incr-patched: u8 3072` builds of `issue-46449`)
25
35
26
36
27
-
#### Mixed
28
-
29
-
LLVM codegen: Don't emit zero-sized padding for fields [#87254](https://github.com/rust-lang/rust/issues/87254)
30
-
- Moderate improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=e8e1b32a7840c07f30c04b252c379a044a73902d&end=47b41b7788a6f85c749049062f1e4eed497cd894&stat=instructions:u) (up to -1.3% on `full` builds of `ctfe-stress-4`)
31
-
- Large regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=e8e1b32a7840c07f30c04b252c379a044a73902d&end=47b41b7788a6f85c749049062f1e4eed497cd894&stat=instructions:u) (up to 4.6% on `full` builds of `deep-vector`)
32
-
33
-
34
37
Run RemoveZsts pass at mir-opt-level=1 [#83417](https://github.com/rust-lang/rust/issues/83417)
35
38
- Large improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=e55c13e1099b78b1a485202fabc9c1b10b1f1d15&end=8007b506ac5da629f223b755f5a5391edd5f6d01&stat=instructions:u) (up to -4.3% on `incr-unchanged` builds of `deeply-nested-async`)
36
39
- Moderate regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=e55c13e1099b78b1a485202fabc9c1b10b1f1d15&end=8007b506ac5da629f223b755f5a5391edd5f6d01&stat=instructions:u) (up to 0.8% on `full` builds of `tokio-webpush-simple`)
40
+
- Although this meets the criteria for being a mixed run, the improvements far outweigh the regressions so we'll label it as an improvement.
41
+
42
+
#### Mixed
37
43
38
44
39
45
Introduce `hir::ExprKind::Let` - Take 2 [#80357](https://github.com/rust-lang/rust/issues/80357)
@@ -44,66 +50,7 @@ Introduce `hir::ExprKind::Let` - Take 2 [#80357](https://github.com/rust-lang/ru
44
50
BTree: merge the complication introduced by #81486 and #86031[#87696](https://github.com/rust-lang/rust/issues/87696)
45
51
- Small improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=2a6fb9a4c0e5ca7a81999065943b211c226fe9d8&end=23461b210f1b0a121592a18fc4fb666106006668&stat=instructions:u) (up to -0.6% on `full` builds of `issue-46449`)
46
52
- Moderate regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=2a6fb9a4c0e5ca7a81999065943b211c226fe9d8&end=23461b210f1b0a121592a18fc4fb666106006668&stat=instructions:u) (up to 1.7% on `full` builds of `ripgrep`)
47
-
48
-
49
-
#### Probably changed
50
-
51
-
The following is a list of comparisons which *probably* represent real performance changes,
52
-
but we're not 100% sure. Please move things from this category into the categories
53
-
above for changes you think *are* definitely relevant and file an issue for each so that
54
-
we can consider how to change our heuristics.
55
-
56
-
57
-
Rollup of 14 pull requests [#87923](https://github.com/rust-lang/rust/issues/87923)
58
-
- Small improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=ae90dcf0207c57c3034f00b07048d63f8b2363c8&end=e8e1b32a7840c07f30c04b252c379a044a73902d&stat=instructions:u) (up to -0.4% on `incr-unchanged` builds of `ripgrep`)
59
-
- Small regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=ae90dcf0207c57c3034f00b07048d63f8b2363c8&end=e8e1b32a7840c07f30c04b252c379a044a73902d&stat=instructions:u) (up to 0.3% on `incr-full` builds of `deeply-nested-closures`)
60
-
61
-
62
-
Make deleted code in a suggestion clearer [#86532](https://github.com/rust-lang/rust/issues/86532)
63
-
- Small improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=362e0f55eb1f36d279e5c4a58fb0fe5f9a2c579d&end=ccffcafd55e58f769d4b0efc0064bf65e76998e4&stat=instructions:u) (up to -0.2% on `full` builds of `regex`)
64
-
- Small regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=362e0f55eb1f36d279e5c4a58fb0fe5f9a2c579d&end=ccffcafd55e58f769d4b0efc0064bf65e76998e4&stat=instructions:u) (up to 0.4% on `incr-patched: println` builds of `regression-31157`)
65
-
66
-
67
-
TryReserveErrorKind tests and inline [#87843](https://github.com/rust-lang/rust/issues/87843)
68
-
- Small improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=ccffcafd55e58f769d4b0efc0064bf65e76998e4&end=25d3e14da77f755ef858b976a25c7e856b62b42a&stat=instructions:u) (up to -0.4% on `full` builds of `deeply-nested`)
69
-
- Small regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=ccffcafd55e58f769d4b0efc0064bf65e76998e4&end=25d3e14da77f755ef858b976a25c7e856b62b42a&stat=instructions:u) (up to 1.2% on `incr-patched: println` builds of `coercions`)
- Small improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=25d3e14da77f755ef858b976a25c7e856b62b42a&end=eb2226b1f174f3cc644275ef8663be6295a7f704&stat=instructions:u) (up to -0.3% on `incr-full` builds of `inflate`)
74
-
- Small regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=25d3e14da77f755ef858b976a25c7e856b62b42a&end=eb2226b1f174f3cc644275ef8663be6295a7f704&stat=instructions:u) (up to 1.3% on `incr-patched: println` builds of `coercions`)
75
-
76
-
77
-
Rollup of 7 pull requests [#87948](https://github.com/rust-lang/rust/issues/87948)
78
-
- Moderate improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=eb2226b1f174f3cc644275ef8663be6295a7f704&end=4e900176b6c402035a6e52da03d453c848f0b336&stat=instructions:u) (up to -2.6% on `incr-patched: println` builds of `coercions`)
79
-
- Small regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=eb2226b1f174f3cc644275ef8663be6295a7f704&end=4e900176b6c402035a6e52da03d453c848f0b336&stat=instructions:u) (up to 0.5% on `incr-patched: println` builds of `regression-31157`)
80
-
81
-
82
-
Implement `black_box` using intrinsic [#87916](https://github.com/rust-lang/rust/issues/87916)
83
-
- Small improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=4498e300e41f47c75abe4e49ec91ae949aaeea5f&end=0fa3190394475a84360b34e074e719d519bc40f1&stat=instructions:u) (up to -0.4% on `full` builds of `helloworld`)
84
-
- Small regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=4498e300e41f47c75abe4e49ec91ae949aaeea5f&end=0fa3190394475a84360b34e074e719d519bc40f1&stat=instructions:u) (up to 0.4% on `incr-patched: add vec item` builds of `deep-vector`)
85
-
86
-
87
-
Name the captured upvars for closures/generators in debuginfo [#85020](https://github.com/rust-lang/rust/issues/85020)
88
-
- Large regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=c6094fc7b9981d755abeb8c0e866a0f6315b3ec3&end=99efc51dae1dbe9d741707a7ddef84c29e654df5&stat=instructions:u) (up to 4.9% on `incr-patched: println` builds of `webrender-wrench`)
89
-
90
-
91
-
Try filtering out non-const impls when we expect const impls [#87375](https://github.com/rust-lang/rust/issues/87375)
92
-
- Small regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=fa2692990c05652c7823c8d2afae501a00a69050&end=136eaa1b25d13635b773a481ecab61a3162cb627&stat=instructions:u) (up to 0.4% on `full` builds of `diesel`)
93
-
94
-
95
-
Uplift the invalid_atomic_ordering lint from clippy to rustc [#84039](https://github.com/rust-lang/rust/issues/84039)
96
-
- Moderate regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=23461b210f1b0a121592a18fc4fb666106006668&end=92f3753b073c03184118a315cc0d289116102ae1&stat=instructions:u) (up to 0.7% on `incr-unchanged` builds of `unicode_normalization`)
97
-
98
-
99
-
Add future-incompat lint for `doc(primitive)`[#87050](https://github.com/rust-lang/rust/issues/87050)
100
-
- Small improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=73d96b090bb68065cd3a469b27cbd568e39bf0e7&end=0035d9dcecee49d1f7349932bfa52c05a6f83641&stat=instructions:u) (up to -0.3% on `incr-unchanged` builds of `webrender-wrench`)
101
-
- Small regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=73d96b090bb68065cd3a469b27cbd568e39bf0e7&end=0035d9dcecee49d1f7349932bfa52c05a6f83641&stat=instructions:u) (up to 0.3% on `incr-unchanged` builds of `helloworld`)
102
-
103
-
104
-
Include (potentially remapped) working dir in crate hash [#87990](https://github.com/rust-lang/rust/issues/87990)
105
-
- Small improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=0e41c6201f7a3f1823b3b668da61577d89bf76d4&end=a183141e2d0f0af7f12946ff1a81615fa35e8099&stat=instructions:u) (up to -0.3% on `incr-unchanged` builds of `deeply-nested-closures`)
106
-
- Small regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=0e41c6201f7a3f1823b3b668da61577d89bf76d4&end=a183141e2d0f0af7f12946ff1a81615fa35e8099&stat=instructions:u) (up to 0.3% on `full` builds of `regression-31157`)
53
+
- This is mostly a wash in terms of performance (with performance shifting somewhat equally across all the benchmarks), with the largest changes happening in stress tests.
107
54
108
55
109
56
#### Untriaged Pull Requests
@@ -117,7 +64,3 @@ Include (potentially remapped) working dir in crate hash [#87990](https://github
117
64
-[#86034 Change entry point to 🛡️ against 💥 💥-payloads](https://github.com/rust-lang/rust/pull/86034)
118
65
-[#84560 Inline Iterator as IntoIterator.](https://github.com/rust-lang/rust/pull/84560)
0 commit comments