Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
88 changes: 88 additions & 0 deletions triage/2026/2026-05-17.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
# 2026-05-17 Triage Log

Fewer than usual PRs merged, mostly due to a shorter week than normal and some
CI trouble. Overall a slightly positive week for performance.

Triage done by **@simulacrum**.
Revision range: [29b75901..281c97c3](https://perf.rust-lang.org/?start=29b7590130c83542a095cdf1323ed0f78eec2bb8&end=281c97c3240a9abd984ca0c6a2cd7389115e80d5&absolute=false&stat=instructions%3Au)

**Summary**:

| (instructions:u) | mean | range | count |
|:----------------------------------:|:-----:|:--------------:|:-----:|
| Regressions ❌ <br /> (primary) | 0.5% | [0.2%, 1.5%] | 6 |
| Regressions ❌ <br /> (secondary) | 0.1% | [0.0%, 0.3%] | 9 |
| Improvements ✅ <br /> (primary) | -0.4% | [-1.3%, -0.2%] | 30 |
| Improvements ✅ <br /> (secondary) | -0.5% | [-1.4%, -0.0%] | 27 |
| All ❌✅ (primary) | -0.3% | [-1.3%, 1.5%] | 36 |


0 Regressions, 0 Improvements, 4 Mixed; 1 of them in rollups
17 artifact comparisons made in total

#### Regressions

No strict regressions this (short) week.

#### Improvements

No strict improvements this (short) week.

#### Mixed

Rollup of 6 pull requests [#156506](https://github.com/rust-lang/rust/pull/156506) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=2aabf3ce0569dd7c8c2d2a27944850056dcf2566&end=8b03437a8ffc8f8b01e62ef5fce82a37ada09b12&stat=instructions:u)

| (instructions:u) | mean | range | count |
|:----------------------------------:|:-----:|:--------------:|:-----:|
| Regressions ❌ <br /> (primary) | 1.4% | [1.4%, 1.4%] | 1 |
| Regressions ❌ <br /> (secondary) | 0.1% | [0.0%, 0.1%] | 3 |
| Improvements ✅ <br /> (primary) | - | - | 0 |
| Improvements ✅ <br /> (secondary) | -0.6% | [-1.0%, -0.1%] | 9 |
| All ❌✅ (primary) | 1.4% | [1.4%, 1.4%] | 1 |

Kicked off perf builds of two of the contained PRs. It seems possible the
regression is due to `#[inline]` additions in the `core::io` movement PRs,
though.
Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll try to find time to follow up here once those are done in a few hours and determine next step here, but overall regressions are fairly small either way (especially in # of affected benchmarks).


Split the node_id_to_def_id table into a per-owner table [#138995](https://github.com/rust-lang/rust/pull/138995) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=800892799d7666fe1dc17abd862100a6cf273718&end=ff9a9ea07bdc74e9555126464b02be8ff277f521&stat=instructions:u)

| (instructions:u) | mean | range | count |
|:----------------------------------:|:-----:|:--------------:|:-----:|
| Regressions ❌ <br /> (primary) | 0.3% | [0.2%, 0.3%] | 2 |
| Regressions ❌ <br /> (secondary) | 0.4% | [0.1%, 0.5%] | 5 |
| Improvements ✅ <br /> (primary) | -0.3% | [-0.4%, -0.2%] | 8 |
| Improvements ✅ <br /> (secondary) | -0.1% | [-0.3%, -0.0%] | 5 |
| All ❌✅ (primary) | -0.1% | [-0.4%, 0.3%] | 10 |

Quite a bit of effort went into making this as neutral as possible, with the
final status deemed warranted given future benefits. See also [this
comment](https://github.com/rust-lang/rust/pull/138995#issuecomment-4406548798).

DestinationPropagation: compute liveness as ranges instead of traveling bitsets [#156218](https://github.com/rust-lang/rust/pull/156218) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=88ba7fbe0a6eda36e0adbfd0482856f3784031b9&end=d7f14d3d89c39b2c12ed4b9864a0eb2c205d20bc&stat=instructions:u)

| (instructions:u) | mean | range | count |
|:----------------------------------:|:-----:|:--------------:|:-----:|
| Regressions ❌ <br /> (primary) | 0.1% | [0.1%, 0.1%] | 1 |
| Regressions ❌ <br /> (secondary) | 0.1% | [0.1%, 0.1%] | 3 |
| Improvements ✅ <br /> (primary) | -0.5% | [-1.3%, -0.2%] | 18 |
| Improvements ✅ <br /> (secondary) | -0.4% | [-0.7%, -0.0%] | 16 |
| All ❌✅ (primary) | -0.5% | [-1.3%, 0.1%] | 19 |

tt-muncher is the only regression, and that too in doc + incr-unchanged builds.
Not actually sure this code runs in any of those scenarios... so marking
as triaged, no follow up needed, especially given the improvement overall.

rustdoc: properly support macros with multiple kinds [#152449](https://github.com/rust-lang/rust/pull/152449) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=be326a93323e9b929525b9298f43883ac66b3b2d&end=d3cd04068e406dd961c2fd666c049c3e38930e0a&stat=instructions:u)

| (instructions:u) | mean | range | count |
|:----------------------------------:|:-----:|:--------------:|:-----:|
| Regressions ❌ <br /> (primary) | 0.3% | [0.3%, 0.3%] | 1 |
| Regressions ❌ <br /> (secondary) | 0.3% | [0.3%, 0.3%] | 1 |
| Improvements ✅ <br /> (primary) | - | - | 0 |
| Improvements ✅ <br /> (secondary) | -0.1% | [-0.1%, -0.1%] | 1 |
| All ❌✅ (primary) | 0.3% | [0.3%, 0.3%] | 1 |

> The impact is expected since we added some loops for iterating types for an
> item (even though 99.9% of the time, there is only one type).

(https://github.com/rust-lang/rust/pull/152449#issuecomment-4468468588)
Loading