Skip to content

Commit adb015f

Browse files
Merge pull request #1408 from Mark-Simulacrum/triage
Add triage for 2022-08-16
2 parents d00760d + 1ca76f8 commit adb015f

File tree

1 file changed

+140
-0
lines changed

1 file changed

+140
-0
lines changed

triage/2022-08-16.md

Lines changed: 140 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,140 @@
1+
# 2022-08-16 Triage Log
2+
3+
A fairly quiet week for performance, with the exception of the LLVM 15 upgrade
4+
which resulted in many changes, mostly to the positive.
5+
6+
Triage done by **@simulacrum**.
7+
Revision range: [cc4dd6fc9f1a5c798df269933c7e442b79661a86..14a459bf37bc19476d43e0045d078121c12d3fef](https://perf.rust-lang.org/?start=cc4dd6fc9f1a5c798df269933c7e442b79661a86&end=14a459bf37bc19476d43e0045d078121c12d3fef&absolute=false&stat=instructions%3Au)
8+
9+
**Summary**:
10+
11+
| (instructions:u) | mean | max | count |
12+
|:----------------:|:----:|:---:|:-----:|
13+
| Regressions ❌ <br /> (primary) | 0.7% | 7.7% | 62 |
14+
| Regressions ❌ <br /> (secondary) | 1.3% | 5.0% | 51 |
15+
| Improvements ✅ <br /> (primary) | -1.8% | -6.9% | 93 |
16+
| Improvements ✅ <br /> (secondary) | -2.4% | -22.0% | 128 |
17+
| All ❌✅ (primary) | -0.8% | 7.7% | 155 |
18+
19+
20+
2 Regressions, 4 Improvements, 2 Mixed; 1 of them in rollups
21+
38 artifact comparisons made in total
22+
23+
#### Regressions
24+
25+
consider unnormalized types for implied bounds [#99217](https://github.com/rust-lang/rust/pull/99217) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=6d3f1beae1720055e5a30f4dbe7a9e7fb810c65e&end=63e4312e6bd50ec9859c363402209809fb8155d5&stat=instructions:u)
26+
27+
| (instructions:u) | mean | max | count |
28+
|:----------------:|:----:|:---:|:-----:|
29+
| Regressions ❌ <br /> (primary) | 0.7% | 1.9% | 37 |
30+
| Regressions ❌ <br /> (secondary) | 2.0% | 2.4% | 11 |
31+
| Improvements ✅ <br /> (primary) | - | - | 0 |
32+
| Improvements ✅ <br /> (secondary) | - | - | 0 |
33+
| All ❌✅ (primary) | 0.7% | 1.9% | 37 |
34+
35+
This regression is caused by a soundness fix.
36+
[#99725](https://github.com/rust-lang/rust/pull/99725) recovered a small amount
37+
of the lost performance here.
38+
39+
rustdoc: Merge source code pages HTML elements together [#100429](https://github.com/rust-lang/rust/pull/100429) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=4c5665583815a0f0f3e22516441efb43ea6dede2&end=801821d1560f84e4716fcbd9244ec959320a13d5&stat=instructions:u)
40+
41+
| (instructions:u) | mean | max | count |
42+
|:----------------:|:----:|:---:|:-----:|
43+
| Regressions ❌ <br /> (primary) | 0.6% | 1.4% | 12 |
44+
| Regressions ❌ <br /> (secondary) | 1.8% | 3.1% | 8 |
45+
| Improvements ✅ <br /> (primary) | - | - | 0 |
46+
| Improvements ✅ <br /> (secondary) | - | - | 0 |
47+
| All ❌✅ (primary) | 0.6% | 1.4% | 12 |
48+
49+
The regressions are limited to doc benchmarks and the underlying change reduces
50+
the number of DOM elements generated by ~30% across a few samples (see PR
51+
description for details). Those sizes aren't measured by perf.rust-lang.org
52+
today, so there's no reflection of that here, but the size improvement is a
53+
welcome one.
54+
55+
#### Improvements
56+
57+
Reoptimize layout array [#99174](https://github.com/rust-lang/rust/pull/99174) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=29e4a9ee0253cd39e552a77f51f11f9a5f1c41e6&end=908fc5b26d15fc96d630ab921e70b2db77a532c4&stat=instructions:u)
58+
59+
| (instructions:u) | mean | max | count |
60+
|:----------------:|:----:|:---:|:-----:|
61+
| Regressions ❌ <br /> (primary) | - | - | 0 |
62+
| Regressions ❌ <br /> (secondary) | - | - | 0 |
63+
| Improvements ✅ <br /> (primary) | -0.4% | -0.8% | 10 |
64+
| Improvements ✅ <br /> (secondary) | -0.8% | -1.2% | 5 |
65+
| All ❌✅ (primary) | -0.4% | -0.8% | 10 |
66+
67+
68+
Remove manual implementations of HashStable for hir::Expr and hir::Ty. [#100237](https://github.com/rust-lang/rust/pull/100237) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=3694b7d307b7516757651952b30bb97b6ba5c049&end=ef9810a3e2a9a16e79176cb0d3466ea82d239942&stat=instructions:u)
69+
70+
| (instructions:u) | mean | max | count |
71+
|:----------------:|:----:|:---:|:-----:|
72+
| Regressions ❌ <br /> (primary) | - | - | 0 |
73+
| Regressions ❌ <br /> (secondary) | - | - | 0 |
74+
| Improvements ✅ <br /> (primary) | -0.2% | -0.2% | 3 |
75+
| Improvements ✅ <br /> (secondary) | - | - | 0 |
76+
| All ❌✅ (primary) | -0.2% | -0.2% | 3 |
77+
78+
Possibly spurious, but leaving in the report -- bitmaps-3.1.0 check typically does not [see] this much impact on a run to run basis so it's probably at least partially real.
79+
80+
[see]: https://perf.rust-lang.org/index.html?start=2022-07-01&end=ef9810a3e2a9a16e79176cb0d3466ea82d239942&benchmark=bitmaps-3.1.0&profile=check&scenario=incr-unchanged&stat=instructions:u&kind=percentfromfirst
81+
82+
83+
Shrink `ast::Attribute`. [#100441](https://github.com/rust-lang/rust/pull/100441) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=8556e6620e4866526b3cea767ad8c20ae877a569&end=14a459bf37bc19476d43e0045d078121c12d3fef&stat=instructions:u)
84+
85+
| (instructions:u) | mean | max | count |
86+
|:----------------:|:----:|:---:|:-----:|
87+
| Regressions ❌ <br /> (primary) | 0.6% | 0.6% | 1 |
88+
| Regressions ❌ <br /> (secondary) | 0.2% | 0.2% | 1 |
89+
| Improvements ✅ <br /> (primary) | -0.6% | -1.4% | 22 |
90+
| Improvements ✅ <br /> (secondary) | -1.0% | -1.5% | 23 |
91+
| All ❌✅ (primary) | -0.5% | -1.4% | 23 |
92+
93+
Mostly an improvement in doc benchmarks, though a few check benchmarks improved
94+
as well. An excellent win for memory usage, with up to 5.8% wins on helloworld.
95+
96+
passes: load `defined_lib_features` query less [#100328](https://github.com/rust-lang/rust/pull/100328) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=569788e47ee3595c9c6f0e332844d982b3e991c2&end=0068b8bf4b150b506ef0871be4e8652fd4308f84&stat=instructions:u)
97+
98+
| (instructions:u) | mean | max | count |
99+
|:----------------:|:----:|:---:|:-----:|
100+
| Regressions ❌ <br /> (primary) | - | - | 0 |
101+
| Regressions ❌ <br /> (secondary) | 0.8% | 1.5% | 3 |
102+
| Improvements ✅ <br /> (primary) | -0.4% | -0.4% | 1 |
103+
| Improvements ✅ <br /> (secondary) | -1.2% | -1.8% | 8 |
104+
| All ❌✅ (primary) | -0.4% | -0.4% | 1 |
105+
106+
The regressions here appear to be spurious, with performance recovering on the
107+
next commit. Otherwise, this is a good improvement.
108+
109+
#### Mixed
110+
111+
Rollup of 13 pull requests [#100426](https://github.com/rust-lang/rust/pull/100426) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=20ffea6938b5839c390252e07940b99e3b6a889a&end=2ed0f29168f5bc116e747152be600519b5d78bfd&stat=instructions:u)
112+
113+
| (instructions:u) | mean | max | count |
114+
|:----------------:|:----:|:---:|:-----:|
115+
| Regressions ❌ <br /> (primary) | 0.3% | 0.4% | 4 |
116+
| Regressions ❌ <br /> (secondary) | 0.5% | 0.7% | 5 |
117+
| Improvements ✅ <br /> (primary) | -0.9% | -0.9% | 1 |
118+
| Improvements ✅ <br /> (secondary) | -1.8% | -1.8% | 1 |
119+
| All ❌✅ (primary) | 0.0% | -0.9% | 5 |
120+
121+
Small-ish regression narrowed down to
122+
[#99337](https://github.com/rust-lang/rust/pull/99337), some active work in
123+
this area of rustdoc is likely to help here soon.
124+
125+
Update to LLVM 15 [#99464](https://github.com/rust-lang/rust/pull/99464) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=b998821e4c51c44a9ebee395c91323c374236bbb&end=e2b52ff73edc8b0b7c74bc28760d618187731fe8&stat=instructions:u)
126+
127+
| (instructions:u) | mean | max | count |
128+
|:----------------:|:----:|:---:|:-----:|
129+
| Regressions ❌ <br /> (primary) | 0.8% | 7.5% | 40 |
130+
| Regressions ❌ <br /> (secondary) | 1.2% | 4.4% | 29 |
131+
| Improvements ✅ <br /> (primary) | -1.5% | -6.0% | 100 |
132+
| Improvements ✅ <br /> (secondary) | -2.6% | -21.6% | 94 |
133+
| All ❌✅ (primary) | -0.9% | 7.5% | 140 |
134+
135+
Overall the benefits here outweigh the negatives, with a number of good
136+
improvements. LLVM upgrades are something we're going to keep rolling forward
137+
on regardless. For wall time metrics the improvement here looks particularly
138+
nice, with bootstrap times improved by ~4%, shaving 30 seconds of the total
139+
time measured by perf.
140+

0 commit comments

Comments
 (0)