Skip to content

Make lowering incremental, take 3/N #142830

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Draft
wants to merge 5 commits into
base: master
Choose a base branch
from

Conversation

cjgillot
Copy link
Contributor

Rebase of #88186 that was rebased by #127262

No real change in design, so I'm not expecting a perf miracle.

r? @ghost

@rustbot rustbot added PG-exploit-mitigations Project group: Exploit mitigations T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. labels Jun 21, 2025
@cjgillot

This comment was marked as outdated.

@rust-timer

This comment was marked as outdated.

@rustbot rustbot added the S-waiting-on-perf Status: Waiting on a perf run to be completed. label Jun 21, 2025
@bors

This comment was marked as outdated.

@bors bors added the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Jun 21, 2025
@cjgillot
Copy link
Contributor Author

@bors try @rust-timer queue

@rust-timer

This comment has been minimized.

@bors
Copy link
Collaborator

bors commented Jun 21, 2025

⌛ Trying commit 0e2f90b with merge a6b131d...

bors added a commit that referenced this pull request Jun 21, 2025
Make lowering incremental, take 3/N

Rebase of #88186 that was rebased by #127262

No real change in design, so I'm not expecting a perf miracle.

r? `@ghost`
@rust-log-analyzer

This comment has been minimized.

@bors
Copy link
Collaborator

bors commented Jun 21, 2025

☀️ Try build successful - checks-actions
Build commit: a6b131d (a6b131d42573c085b032a153779366b448148b9d)

@rust-timer

This comment has been minimized.

@rust-timer
Copy link
Collaborator

Finished benchmarking commit (a6b131d): 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.8% [0.2%, 1.8%] 157
Regressions ❌
(secondary)
1.1% [0.2%, 4.3%] 69
Improvements ✅
(primary)
-0.4% [-0.5%, -0.3%] 5
Improvements ✅
(secondary)
-0.3% [-0.5%, -0.2%] 7
All ❌✅ (primary) 0.7% [-0.5%, 1.8%] 162

Max RSS (memory usage)

Results (primary 10.5%, secondary 10.1%)

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

mean range count
Regressions ❌
(primary)
10.5% [3.1%, 28.6%] 249
Regressions ❌
(secondary)
10.1% [2.2%, 31.4%] 142
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) 10.5% [3.1%, 28.6%] 249

Cycles

Results (primary 2.5%, secondary 4.1%)

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

mean range count
Regressions ❌
(primary)
2.5% [1.4%, 5.5%] 35
Regressions ❌
(secondary)
4.1% [1.8%, 7.5%] 22
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) 2.5% [1.4%, 5.5%] 35

Binary size

Results (primary -0.1%, secondary -0.2%)

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)
- - 0
Improvements ✅
(primary)
-0.1% [-0.2%, -0.0%] 82
Improvements ✅
(secondary)
-0.2% [-0.9%, -0.0%] 43
All ❌✅ (primary) -0.1% [-0.2%, -0.0%] 82

Bootstrap: 690.042s -> 689.298s (-0.11%)
Artifact size: 371.86 MiB -> 371.81 MiB (-0.01%)

@rustbot rustbot added perf-regression Performance regression. and removed S-waiting-on-perf Status: Waiting on a perf run to be completed. labels Jun 21, 2025
@cjgillot
Copy link
Contributor Author

@bors try @rust-timer queue

@rust-timer

This comment has been minimized.

@rustbot rustbot added the S-waiting-on-perf Status: Waiting on a perf run to be completed. label Jun 22, 2025
@bors
Copy link
Collaborator

bors commented Jun 22, 2025

⌛ Trying commit 8ab4e63 with merge 31325ff...

bors added a commit that referenced this pull request Jun 22, 2025
Make lowering incremental, take 3/N

Rebase of #88186 that was rebased by #127262

No real change in design, so I'm not expecting a perf miracle.

r? `@ghost`
@rust-log-analyzer

This comment has been minimized.

@bors
Copy link
Collaborator

bors commented Jun 22, 2025

☀️ Try build successful - checks-actions
Build commit: 31325ff (31325ff312ad91d8a2dd156c832cacc0435f9ea1)

@rust-timer

This comment has been minimized.

@rust-timer
Copy link
Collaborator

Finished benchmarking commit (31325ff): 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.5% [0.2%, 1.3%] 120
Regressions ❌
(secondary)
0.8% [0.2%, 3.2%] 77
Improvements ✅
(primary)
-0.7% [-1.3%, -0.2%] 12
Improvements ✅
(secondary)
-0.6% [-1.3%, -0.2%] 37
All ❌✅ (primary) 0.4% [-1.3%, 1.3%] 132

Max RSS (memory usage)

Results (primary 10.8%, secondary 10.4%)

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

mean range count
Regressions ❌
(primary)
10.8% [2.3%, 29.1%] 248
Regressions ❌
(secondary)
10.4% [1.9%, 31.7%] 143
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) 10.8% [2.3%, 29.1%] 248

Cycles

Results (primary 2.1%, secondary 4.1%)

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

mean range count
Regressions ❌
(primary)
2.1% [1.2%, 3.8%] 20
Regressions ❌
(secondary)
4.1% [1.7%, 6.6%] 16
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) 2.1% [1.2%, 3.8%] 20

Binary size

Results (primary -0.1%, secondary -0.2%)

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)
- - 0
Improvements ✅
(primary)
-0.1% [-0.2%, -0.0%] 83
Improvements ✅
(secondary)
-0.2% [-0.9%, -0.0%] 43
All ❌✅ (primary) -0.1% [-0.2%, -0.0%] 83

Bootstrap: 689.082s -> 688.79s (-0.04%)
Artifact size: 371.89 MiB -> 371.87 MiB (-0.00%)

@rustbot rustbot removed the S-waiting-on-perf Status: Waiting on a perf run to be completed. label Jun 22, 2025
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
perf-regression Performance regression. PG-exploit-mitigations Project group: Exploit mitigations 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. T-rustdoc Relevant to the rustdoc 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