Skip to content

Commit 0cb5d85

Browse files
committed
checkpoint initial triage report. I have gotten down to the first entry of Mixed before having to step out.
1 parent 85ded9b commit 0cb5d85

File tree

1 file changed

+126
-0
lines changed

1 file changed

+126
-0
lines changed

triage/2021-09-21.md

Lines changed: 126 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,126 @@
1+
# 2021-09-21 Triage Log
2+
3+
TODO: Summary
4+
5+
Triage done by **@???**.
6+
Revision range: [9f85cd6f2ab2769c16e89dcdddb3e11d9736b351..7743c9fadd64886d537966ba224b9c20e6014a59](https://perf.rust-lang.org/?start=9f85cd6f2ab2769c16e89dcdddb3e11d9736b351&end=7743c9fadd64886d537966ba224b9c20e6014a59&absolute=false&stat=instructions%3Au)
7+
8+
2 Regressions, 4 Improvements, 8 Mixed; ??? of them in rollups
9+
44 comparisons made in total
10+
11+
#### Regressions
12+
13+
Point at argument instead of call for their obligations [#88719](https://github.com/rust-lang/rust/issues/88719)
14+
- Large regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=e4828d5b7f745a9e867a9b0cc7f080f287bcf55d&end=e36621057d9f497c822eb800934b5933c10510cf&stat=instructions:u) (up to 1.9% on `full` builds of `diesel`)
15+
16+
17+
Rollup of 10 pull requests [#89047](https://github.com/rust-lang/rust/issues/89047)
18+
- Large regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=e0c38af27cb5f6f961809601b717d6afc3b190ee&end=207d9558d00dd5cc438a6418ba96912d396e2155&stat=instructions:u) (up to 1.9% on `incr-unchanged` builds of `webrender-wrench`)
19+
20+
21+
#### Improvements
22+
23+
Avoid unnecessary formatting when trace log level is disabled [#88934](https://github.com/rust-lang/rust/issues/88934)
24+
- Moderate improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=78a46efff06558674b51c10d8d81758285746ab5&end=38e576423dc56a006ccf0b72e106f09bdea6efc2&stat=instructions:u) (up to -1.0% on `incr-full` builds of `derive`)
25+
26+
27+
Fast reject for NeedsNonConstDrop [#88965](https://github.com/rust-lang/rust/issues/88965)
28+
- Large improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=a58db2e4ddbb2e0fa91c53c4901b52a7ef71ef2d&end=8e398f5ba77b283b529c0c61cc2313c4f82d61dd&stat=instructions:u) (up to -2.5% on `full` builds of `html5ever`)
29+
30+
31+
Avoid codegen for Result::into_ok in lang_start [#88988](https://github.com/rust-lang/rust/issues/88988)
32+
- Very large improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=5438ee424c004d7c89f16b9b1b95e899dbc87b25&end=6cdd42f9f8dd4e5e5ba0aa816bc4c99ab8b102f9&stat=instructions:u) (up to -4.4% on `incr-full` builds of `helloworld`)
33+
34+
35+
Don't inline OnceCell initialization closures [#89031](https://github.com/rust-lang/rust/issues/89031)
36+
- Moderate improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=3bca7230ff1ec35db25f2547cf2e83a6f450e923&end=7a3d1a5f3dfeaf5177885fedd7db8ecc70670dc1&stat=instructions:u) (up to -0.9% on `full` builds of `helloworld`)
37+
38+
39+
#### Mixed
40+
41+
Const drop [#88558](https://github.com/rust-lang/rust/issues/88558)
42+
- Large improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=c3c0f80d6081092faff801542dd82f0e2420152b&end=cdeba02ff71416e014f7130f75166890688be986&stat=instructions:u) (up to -1.7% on `full` builds of `externs`)
43+
- Large regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=c3c0f80d6081092faff801542dd82f0e2420152b&end=cdeba02ff71416e014f7130f75166890688be986&stat=instructions:u) (up to 2.7% on `full` builds of `html5ever`)
44+
- Regression addressed by followup PRs [#88965](https://github.com/rust-lang/rust/issues/88965) (which has landed) and [#88963](https://github.com/rust-lang/rust/issues/88963) (which has not yet landed).
45+
46+
Introduce a fast path that avoids the `debug_tuple` abstraction when deriving Debug for unit-like enum variants. [#88832](https://github.com/rust-lang/rust/issues/88832)
47+
- Very large improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=e36621057d9f497c822eb800934b5933c10510cf&end=78a46efff06558674b51c10d8d81758285746ab5&stat=instructions:u) (up to -4.5% on `full` builds of `stm32f4`)
48+
- Large regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=e36621057d9f497c822eb800934b5933c10510cf&end=78a46efff06558674b51c10d8d81758285746ab5&stat=instructions:u) (up to 1.3% on `incr-unchanged` builds of `ctfe-stress-4`)
49+
50+
51+
Remove concept of 'completion' from the projection cache [#88945](https://github.com/rust-lang/rust/issues/88945)
52+
- Small improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=1c03f0d0ba4fee54b7aa458f4d3ad989d8bf7b34&end=e0c38af27cb5f6f961809601b717d6afc3b190ee&stat=instructions:u) (up to -0.3% on `incr-unchanged` builds of `helloworld`)
53+
- Moderate regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=1c03f0d0ba4fee54b7aa458f4d3ad989d8bf7b34&end=e0c38af27cb5f6f961809601b717d6afc3b190ee&stat=instructions:u) (up to 0.8% on `full` builds of `wg-grammar`)
54+
55+
56+
Simplify lazy DefPathHash decoding by using an on-disk hash table. [#82183](https://github.com/rust-lang/rust/issues/82183)
57+
- Very large improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=23afad6e7f0ff17320411a274f3a3beb92452235&end=d6cd2c6c877110748296760aefddc21a0ea1d316&stat=instructions:u) (up to -7.7% on `incr-unchanged` builds of `deeply-nested`)
58+
- Small regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=23afad6e7f0ff17320411a274f3a3beb92452235&end=d6cd2c6c877110748296760aefddc21a0ea1d316&stat=instructions:u) (up to 1.9% on `incr-full` builds of `coercions`)
59+
60+
61+
Gather module items after lowering. [#88703](https://github.com/rust-lang/rust/issues/88703)
62+
- Large improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=697118d23eaa5d59940befabedcafbaceaf61a1c&end=7b5f95270f1ef7118ef4d3b47428054d23113ad5&stat=instructions:u) (up to -1.3% on `incr-unchanged` builds of `ctfe-stress-4`)
63+
- Moderate regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=697118d23eaa5d59940befabedcafbaceaf61a1c&end=7b5f95270f1ef7118ef4d3b47428054d23113ad5&stat=instructions:u) (up to 0.8% on `incr-unchanged` builds of `tuple-stress`)
64+
65+
66+
Querify `FnAbi::of_{fn_ptr,instance}` as `fn_abi_of_{fn_ptr,instance}`. [#88575](https://github.com/rust-lang/rust/issues/88575)
67+
- Moderate improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=5ecc8ad8462574354a55162a0c16b10eb95e3e70&end=91198820d7e697def79177c022b5e98b3d482ddc&stat=instructions:u) (up to -1.0% on `full` builds of `regression-31157`)
68+
- Large regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=5ecc8ad8462574354a55162a0c16b10eb95e3e70&end=91198820d7e697def79177c022b5e98b3d482ddc&stat=instructions:u) (up to 1.4% on `incr-unchanged` builds of `regression-31157`)
69+
70+
71+
Use <[T; N]>::map in Sharded instead of SmallVec and unsafe code [#89069](https://github.com/rust-lang/rust/issues/89069)
72+
- Small improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=db1fb85cff63ad5fffe435e17128f99f9e1d970c&end=3bb9eecf07630be796c587a4bba70c49ae6a1bae&stat=instructions:u) (up to -0.3% on `incr-unchanged` builds of `ucd`)
73+
- Moderate regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=db1fb85cff63ad5fffe435e17128f99f9e1d970c&end=3bb9eecf07630be796c587a4bba70c49ae6a1bae&stat=instructions:u) (up to 2.8% on `incr-full` builds of `ctfe-stress-4`)
74+
75+
76+
Lower only one HIR owner at a time [#87234](https://github.com/rust-lang/rust/issues/87234)
77+
- Large improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=e7958d35ca2c898a223efe402481e0ecb854310a&end=49c0861ed0fa1d95186d88df0cd4310103e70957&stat=instructions:u) (up to -1.3% on `full` builds of `unused-warnings`)
78+
- Small regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=e7958d35ca2c898a223efe402481e0ecb854310a&end=49c0861ed0fa1d95186d88df0cd4310103e70957&stat=instructions:u) (up to 0.4% on `incr-unchanged` builds of `helloworld`)
79+
80+
81+
#### Probably changed
82+
83+
The following is a list of comparisons which *probably* represent real performance changes,
84+
but we're not 100% sure. Please move things from this category into the categories
85+
above for changes you think *are* definitely relevant and file an issue for each so that
86+
we can consider how to change our heuristics.
87+
88+
Add non_exhaustive_omitted_patterns lint related to rfc-2008-non_exhaustive [#86809](https://github.com/rust-lang/rust/issues/86809)
89+
- Moderate improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=34327f6eee06835f81a26765a70ad51d44343ba3&end=2b5ddf36fdc784106b3a064d93dd054c32b1f10f&stat=instructions:u) (up to -0.6% on `full` builds of `unicode_normalization`)
90+
91+
92+
Convert `debug_assert` to `assert` in `CachingSourceMapView` [#89049](https://github.com/rust-lang/rust/issues/89049)
93+
- Small improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=7b5f95270f1ef7118ef4d3b47428054d23113ad5&end=5ecc8ad8462574354a55162a0c16b10eb95e3e70&stat=instructions:u) (up to -0.4% on `full` builds of `helloworld`)
94+
95+
96+
#### Untriaged Pull Requests
97+
98+
- [#89125 Don't use projection cache or candidate cache in intercrate mode](https://github.com/rust-lang/rust/pull/89125)
99+
- [#89031 Don't inline OnceCell initialization closures](https://github.com/rust-lang/rust/pull/89031)
100+
- [#88945 Remove concept of 'completion' from the projection cache](https://github.com/rust-lang/rust/pull/88945)
101+
- [#88881 Rollup of 7 pull requests](https://github.com/rust-lang/rust/pull/88881)
102+
- [#88824 Rollup of 15 pull requests](https://github.com/rust-lang/rust/pull/88824)
103+
- [#88710 Use index newtyping for TyVid](https://github.com/rust-lang/rust/pull/88710)
104+
- [#88703 Gather module items after lowering.](https://github.com/rust-lang/rust/pull/88703)
105+
- [#88627 Do not preallocate HirIds](https://github.com/rust-lang/rust/pull/88627)
106+
- [#88597 Move global analyses from lowering to resolution](https://github.com/rust-lang/rust/pull/88597)
107+
- [#88575 Querify `FnAbi::of_{fn_ptr,instance}` as `fn_abi_of_{fn_ptr,instance}`.](https://github.com/rust-lang/rust/pull/88575)
108+
- [#88552 Stop allocating vtable entries for non-object-safe methods](https://github.com/rust-lang/rust/pull/88552)
109+
- [#88533 Concrete regions can show up in mir borrowck if the originated from there](https://github.com/rust-lang/rust/pull/88533)
110+
- [#88530 Shrink Session a bit](https://github.com/rust-lang/rust/pull/88530)
111+
- [#88435 Avoid invoking the hir_crate query to traverse the HIR](https://github.com/rust-lang/rust/pull/88435)
112+
- [#88308 Morph `layout_raw` query into `layout_of`.](https://github.com/rust-lang/rust/pull/88308)
113+
- [#87815 encode `generics_of` for fields and ty params](https://github.com/rust-lang/rust/pull/87815)
114+
- [#87781 Remove box syntax from compiler and tools](https://github.com/rust-lang/rust/pull/87781)
115+
- [#87688 Introduce `let...else`](https://github.com/rust-lang/rust/pull/87688)
116+
- [#87234 Lower only one HIR owner at a time](https://github.com/rust-lang/rust/pull/87234)
117+
- [#84373 Encode spans relative to the enclosing item](https://github.com/rust-lang/rust/pull/84373)
118+
- [#83698 Use undef for uninitialized bytes in constants](https://github.com/rust-lang/rust/pull/83698)
119+
- [#83302 Get piece unchecked in `write`](https://github.com/rust-lang/rust/pull/83302)
120+
- [#82183 Simplify lazy DefPathHash decoding by using an on-disk hash table.](https://github.com/rust-lang/rust/pull/82183)
121+
- [#80522 Split rustc_mir](https://github.com/rust-lang/rust/pull/80522)
122+
123+
#### Nags requiring follow up
124+
125+
TODO: Nags
126+

0 commit comments

Comments
 (0)