Skip to content

Commit df0a273

Browse files
authored
Merge pull request #1152 from Mark-Simulacrum/triage
Add triage for this week
2 parents 6d95a0f + 94edb9e commit df0a273

File tree

1 file changed

+70
-0
lines changed

1 file changed

+70
-0
lines changed

triage/2022-01-18.md

+70
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
# 2022-01-18 Triage Log
2+
3+
Quiet week for regular rustc performance; incremental builds
4+
(particularly ones with little recompilation to do) saw an average 1.5%
5+
improvement. rustdoc also saw several notable optimizations land which improve
6+
performance, particularly on larger benchmarks.
7+
8+
Triage done by **@simulacrum**.
9+
Revision range: [72e74d7b9cf1a7901650227e74650f1fcc797600..7bc7be860f99f4a40d45b0f74e2d01b02e072357](https://perf.rust-lang.org/?start=72e74d7b9cf1a7901650227e74650f1fcc797600&end=7bc7be860f99f4a40d45b0f74e2d01b02e072357&absolute=false&stat=instructions%3Au)
10+
11+
3 Regressions, 5 Improvements, 2 Mixed; 2 of them in rollups
12+
30 comparisons made in total
13+
14+
#### Regressions
15+
16+
Rollup of 9 pull requests [#92844](https://github.com/rust-lang/rust/issues/92844)
17+
- Very large regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=22e491ac7ed454d34669151a8b6464cb643c9b41&end=f312a5e610d47601e9a3da828002f5e1ffeb272a&stat=instructions:u) (up to 8.2% on `full` builds of `keccak check`)
18+
- Unknown cause, though suspected to be [#92006](https://github.com/rust-lang/rust/pull/92006).
19+
This may also be due to sensitivity in keccak and similar benchmarks to
20+
a particularly hot loop in the compiler, which sometimes is less nicely
21+
compiled by LLVM. (See [#92816 (comment)](https://github.com/rust-lang/rust/pull/92816#issuecomment-1014938273)
22+
for details).
23+
24+
Add {Add,Sub,Mul,Div,Rem,BitXor,BitOr,BitAnd}{,Assign}<$t> to Saturat… [#92356](https://github.com/rust-lang/rust/issues/92356)
25+
- Large regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=a0984b4e4c908d714cebd0f0786c00645ea4d79a&end=26c06cf8e27e5fa06b4894f14588c187510bae47&stat=instructions:u) (up to 2.8% on `full` builds of `helloworld doc`)
26+
- Expected regression in documentation builds; there's just more to document.
27+
28+
Rollup of 10 pull requests [#92970](https://github.com/rust-lang/rust/issues/92970)
29+
- Moderate regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=48e89b00caa94829a5f07e0f1ecb33bf37431244&end=bd3cb52565faab2755ff1bdb54d88bc91f47b4b9&stat=instructions:u) (up to 0.9% on `incr-unchanged` builds of `externs opt`)
30+
- Unclear cause, but regression is relatively small and limited to just one
31+
benchmark.
32+
33+
#### Improvements
34+
35+
Migrate rustdoc from Tera to Askama [#92526](https://github.com/rust-lang/rust/issues/92526)
36+
- Very large improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=124555a69e5f65173ec7840000eb8e953d046740&end=e916815d21e37af5cd85f9eb67cda155d7129fff&stat=instructions:u) (up to -30.7% on `full` builds of `externs doc`)
37+
- Major improvement in instruction counts for rustdoc; a less significant win on
38+
wall time for most benchmarks, though particularly heavy ones (e.g., stm32f4)
39+
do see a sizeable improvement of around 10% less wall time.
40+
41+
42+
Introduce new `TaskDepsRef` enum to track allow/ignore/forbid status [#92681](https://github.com/rust-lang/rust/issues/92681)
43+
- Moderate improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=86f7f78f05ff8295aad2ad2a31770ce4408cc849&end=02c9e73e6ca7e2bd444d39182f8dee7e2ba4a609&stat=instructions:u) (up to -1.4% on `incr-unchanged` builds of `externs debug`)
44+
- Small, across the board improvement for incremental benchmarks.
45+
46+
47+
rustdoc: avoid many `Symbol` to `String` conversions. [#91948](https://github.com/rust-lang/rust/issues/91948)
48+
- Very large improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=ad46af24713115e7b9b258346e66b9b2d14eacfc&end=b0ec3e09a996f2cb35be7710fd1003c3c38f1667&stat=instructions:u) (up to -5.5% on `full` builds of `issue-46449 doc`)
49+
50+
51+
Optimize `impl_read_unsigned_leb128` [#92604](https://github.com/rust-lang/rust/issues/92604)
52+
- Large improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=69d25fc58257637cedbfe0a046d90da1494bcb05&end=38c22af0153cf8f920c01ef04493e8878401fd18&stat=instructions:u) (up to -3.6% on `full` builds of `helloworld doc`)
53+
54+
55+
Reduce use of LocalDefId <-> HirId maps [#90146](https://github.com/rust-lang/rust/issues/90146)
56+
- Moderate improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=ec4bcaac450279b029f3480b8b8f1b82ab36a5eb&end=f9d61cd2eda81b595862635914bd0224402a4a26&stat=instructions:u) (up to -2.4% on `incr-patched: minor change` builds of `tokio-webpush-simple debug`)
57+
58+
rustc_metadata: Switch all decoder methods from vectors to iterators [#92245](https://github.com/rust-lang/rust/issues/92245)
59+
- Small improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=7be8693984d32d2f65ce9ded4f65b6b7340bddce&end=48e89b00caa94829a5f07e0f1ecb33bf37431244&stat=instructions:u) (up to -0.8% on `incr-unchanged` builds of `cranelift-codegen check`)
60+
61+
#### Mixed
62+
63+
partially revertish `lazily "compute" anon const default substs` [#92805](https://github.com/rust-lang/rust/issues/92805)
64+
- Moderate improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=42852d7857d2955f19ec333bec1ed107964db200&end=7be8693984d32d2f65ce9ded4f65b6b7340bddce&stat=instructions:u) (up to -1.4% on `full` builds of `deeply-nested-async check`)
65+
- Small regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=42852d7857d2955f19ec333bec1ed107964db200&end=7be8693984d32d2f65ce9ded4f65b6b7340bddce&stat=instructions:u) (up to 0.9% on `incr-unchanged` builds of `clap-rs check`)
66+
67+
68+
Remove deprecated LLVM-style inline assembly [#92816](https://github.com/rust-lang/rust/issues/92816)
69+
- Very large improvement in [instruction counts](https://perf.rust-lang.org/compare.html?start=128417f40f80ce585414bf5a017540447e6be775&end=a34c0797528172ede89480e3033f7a5e71ea4735&stat=instructions:u) (up to -7.5% on `full` builds of `keccak check`)
70+
- Moderate regression in [instruction counts](https://perf.rust-lang.org/compare.html?start=128417f40f80ce585414bf5a017540447e6be775&end=a34c0797528172ede89480e3033f7a5e71ea4735&stat=instructions:u) (up to 1.0% on `incr-unchanged` builds of `ctfe-stress-4 check`)

0 commit comments

Comments
 (0)