Skip to content

Conversation

saethlin
Copy link
Member

@saethlin saethlin commented Sep 26, 2025

We previously tried to introduce a more gentle version of this hack in github.com//pull/129714, but that wasn't enough because the problem was re-reported in #131960 (comment). So this increases the magic number from 2 to 8. Surely nobody will complain that they have a type whose depth grows more than 8 times faster than its call graph depth.

@rustbot rustbot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Sep 26, 2025
@saethlin
Copy link
Member Author

@bors try @rust-timer queue

@rust-timer

This comment has been minimized.

rust-bors bot added a commit that referenced this pull request Sep 26, 2025
…try>

Make the inliner recursion depth hack stronger
@rust-bors

This comment has been minimized.

@rustbot rustbot added the S-waiting-on-perf Status: Waiting on a perf run to be completed. label Sep 26, 2025
@rust-log-analyzer

This comment has been minimized.

@rust-bors
Copy link

rust-bors bot commented Sep 26, 2025

☀️ Try build successful (CI)
Build commit: 84baca6 (84baca666cf52534bd50188bd7c20b504018eace, parent: 5b9007bfc358817cf066ee27c6b440440727d3a7)

@rust-timer

This comment has been minimized.

@rust-timer
Copy link
Collaborator

Finished benchmarking commit (84baca6): comparison URL.

Overall result: ❌✅ regressions and improvements - please read the text below

Benchmarking this pull request means it may be perf-sensitive – we'll automatically label it not fit for rolling up. You can override this, but we strongly advise not to, due to possible changes in compiler perf.

Next Steps: If you can justify the regressions found in this try perf run, please do so in sufficient writing along with @rustbot label: +perf-regression-triaged. If not, please fix the regressions and do another perf run. If its results are neutral or positive, the label will be automatically removed.

@bors rollup=never
@rustbot label: -S-waiting-on-perf +perf-regression

Instruction count

Our most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
0.4% [0.1%, 1.1%] 7
Improvements ✅
(primary)
-1.2% [-1.3%, -1.1%] 2
Improvements ✅
(secondary)
-0.5% [-1.4%, -0.1%] 10
All ❌✅ (primary) -1.2% [-1.3%, -1.1%] 2

Max RSS (memory usage)

Results (primary -3.5%, secondary 3.9%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
3.9% [1.0%, 5.4%] 12
Improvements ✅
(primary)
-3.5% [-5.4%, -2.3%] 3
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) -3.5% [-5.4%, -2.3%] 3

Cycles

Results (primary -4.2%, secondary -4.8%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
3.4% [2.3%, 4.1%] 3
Improvements ✅
(primary)
-4.2% [-10.3%, -2.1%] 22
Improvements ✅
(secondary)
-5.7% [-19.9%, -1.0%] 26
All ❌✅ (primary) -4.2% [-10.3%, -2.1%] 22

Binary size

Results (primary 0.2%, secondary 0.0%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
0.3% [0.0%, 1.5%] 5
Regressions ❌
(secondary)
0.0% [0.0%, 0.0%] 37
Improvements ✅
(primary)
-0.1% [-0.1%, -0.1%] 2
Improvements ✅
(secondary)
-0.1% [-0.1%, -0.1%] 1
All ❌✅ (primary) 0.2% [-0.1%, 1.5%] 7

Bootstrap: 478.827s -> 470.051s (-1.83%)
Artifact size: 388.10 MiB -> 388.49 MiB (0.10%)

@rustbot rustbot added perf-regression Performance regression. and removed S-waiting-on-perf Status: Waiting on a perf run to be completed. labels Sep 26, 2025
@Kobzol
Copy link
Member

Kobzol commented Sep 26, 2025

(the cycle changes and bootstrap time are noise returning to normal).

@saethlin saethlin force-pushed the geoarrow-inliner-recursion-hack branch from 049731c to 9e379ff Compare September 26, 2025 20:16
@saethlin saethlin marked this pull request as ready for review September 26, 2025 20:16
@rustbot
Copy link
Collaborator

rustbot commented Sep 26, 2025

Some changes occurred to MIR optimizations

cc @rust-lang/wg-mir-opt

This PR changes a file inside tests/crashes. If a crash was fixed, please move into the corresponding ui subdir and add 'Fixes #' to the PR description to autoclose the issue upon merge.

@rustbot rustbot added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Sep 26, 2025
@rustbot rustbot removed the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Sep 26, 2025
@rustbot
Copy link
Collaborator

rustbot commented Sep 26, 2025

r? @petrochenkov

rustbot has assigned @petrochenkov.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
perf-regression Performance regression. S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants