2021-01-26 Triage Log

This week continues a trend of relatively large rollups, which often contain perf-sensitive PRs. We need to get better at marking PRs as rollup=never or otherwise not including them, but it is unclear how precisely to go about doing so. The tooling for testing individual PRs merged in rollups should also be improved to work better in the next few days, though.

Other than that, this week saw several regressions, most of which were not easily explained. We are seeking feedback from PR authors and reviewers on whether the results are expected and if anything can be done.

Triage done by @rylevick and @simulacrum. Revision range: e05409a02c6e73a3dea6da98798468db2910ca59..1483e67addd37d9bd20ba3b4613b678ee9ad4d68

5 Regressions, 2 Improvements, 1 Mixed; 3 of them in rollups

Regressions

Deprecate-in-future the constants superceded by RFC 2700 #80958

  • Small regression in instruction counts (up to 2.4% on incr-patched: Job builds of regex-check)
  • Unsure why this might be causing performance regressions as this change does not touch much code and only produces lint warnings when the user opts into them.
  • The author of the PR was asked why this might be the case, and a nag noted.

Rollup of 11 pull requests #81240

  • Moderate regression in instruction counts (up to 2.0% on full builds of keccak-check)
  • Revert kicked off here to test a possible culprit in #81178.

Generate metadata by iterating on DefId instead of traversing the HIR tree 1/N #80919

  • Moderate regression in instruction counts (up to 1.0% on incr-patched: println builds of style-servo-check)
  • Contact the PR author to see why the perf regressions were not discussed in the initial PR (even though perf runs were done). Waiting on their response.

Rollup of 14 pull requests #81355

  • Very large regression in instruction counts (up to 12.6% on full builds of deeply-nested-async-debug)

Prevent query cycles in the MIR inliner #68828

  • Moderate regression in instruction counts (up to 2.1% on full builds of keccak-check)
  • Moderate improvement in instruction counts (up to -1.8% on full builds of ctfe-stress-4-check)
  • Nag filed

Improvements

Visit only terminators when removing unneeded drops #81122

Rollup of 15 pull requests #81304

  • Moderate improvement in instruction counts (up to -1.1% on incr-unchanged builds of helloworld-opt)

Mixed

mark raw_vec::ptr with inline #79113

  • Moderate regression in instruction counts (up to 4.2% on full builds of cranelift-codegen-opt)
  • Moderate improvement in instruction counts (up to -1.5% on incr-patched: println builds of cargo-opt)

Nags requiring follow up

  • Deprecate in future regression #80958
  • Waiting on response to inquiry.
  • Regression in prevent query cycles in the MIR inliner - expected? #68828