2021-11-02 Triage Log
Summary: The only significant regressions were 1. two PRs that slowed down doc generation, and 2. some slowdown from the new lints to flag occurrences of Unicode bidirectional control characters. The doc generation regression is being investigated.
Triage done by @pnkfelix. Revision range: 3c8f001d454b1b495f7472d8430ef8fdf10aac11..6384dca100f3cedfa031a9204586f94f8612eae5
6 Regressions, 3 Improvements, 1 Mixed; 4 of them in rollups 39 comparisons made in total
Regressions
Fixes incorrect handling of ADT's drop requirements #90218
- Very large regression in instruction counts (up to 5.3% on
full
builds of regression-31157
) - regression-31157 check regressed by 4.7% on incr and 5.3 on full.
- issue-46449 check regressed by 1.89% on incr-full.
- wg-grammar regressed by 1.3-1.4% in a bunch of scenarios.
- but otherwise, this does not seem too bad. I think we should keep this PR approved for backport, while also look into fixing the regression on nightly.
- filed #90504 as followup investigation issue.
Rollup of 3 pull requests #90387
- Large regression in instruction counts (up to 2.4% on
full
builds of inflate
) - 2 of the 3 pull requests appear trivial (fixing typos and removing extra lines in documentation), which leaves PR #90376 as the main suspect.
- Meanwhile, all PR #90376 does, according to its description, is move code around, remove dead code, and inline a singly called function.
- treating as alignment artifacts from code rearrangement. We tend not to micro-optimize that in the compiler.
Rollup of 8 pull requests #90416
- Large regression in instruction counts (up to 2.7% on
full
builds of helloworld
) - All the significant perf regressions are due to doc generation (many regressed by 1.0-2.7%).
- filed #90512 as followup investigation issue.
Rollup of 5 pull requests #90422
- Very large regression in instruction counts (up to 5.8% on
full
builds of tokio-webpush-simple
) - All the significant perf regressions are due to doc generation (many regressed by 1.0-5.8%).
- discussion is ongoing in PR 90183
impl Pattern for char array #86336
- Small regression in instruction counts (up to 0.6% on
full
builds of deeply-nested-async
) - The only benchmarks that regressed did so by a small amount, percentage wise 0.2-0.6%; the benchmarks that did regress in that fashion are:
deeply-nested-async
, helloworld
, unify-linearly
. - I don't think its worth investing effort trying to figure out the root cause of this minor regression, unless someone wants to take it on as a self-educating exercise.
Update cargo #90490
- Moderate regression in instruction counts (up to 2.0% on
incr-patched: println
builds of regression-31157
) - Only regression-31157 opt regressed, by 1.6-2.0%.
- It is not worth investing effort trying to figure out the root cause of this limited regression.
- (Note: regression #31157 was itself put in to catch a performance regression with respect to time and RAM, but that regression was more like 1,882% in time and 10x in space.)
Improvements
Rollup of 4 pull requests #90314
- Large improvement in instruction counts (up to -2.1% on
incr-unchanged
builds of helloworld
)
Use SortedMap in HIR. #90145
- Moderate improvement in instruction counts (up to -0.8% on
incr-unchanged
builds of unicode_normalization
)
Revert “Add rustc lint, warning when iterating over hashmaps” #90380
- Very large improvement in instruction counts (up to -8.9% on
incr-full
builds of deeply-nested-async
)
Mixed
[master] Fix CVE-2021-42574 #90462
- Small improvement in instruction counts (up to -0.5% on
full
builds of deeply-nested-async
) - Very large regression in instruction counts (up to 14.2% on
incr-unchanged
builds of coercions
) - Filed issue #90514 for follow up investigation of coercions regression.
Untriaged Pull Requests