Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Inline a few functions. #102387

Merged
merged 2 commits into from
Sep 30, 2022
Merged

Conversation

nnethercote
Copy link
Contributor

r? @ghost

@rustbot rustbot added the T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. label Sep 28, 2022
@nnethercote
Copy link
Contributor Author

@bors try @rust-timer queue

@rust-timer
Copy link
Collaborator

Awaiting bors try build completion.

@rustbot label: +S-waiting-on-perf

@rustbot rustbot added the S-waiting-on-perf Status: Waiting on a perf run to be completed. label Sep 28, 2022
@bors
Copy link
Contributor

bors commented Sep 28, 2022

⌛ Trying commit d84118862d970007c7087144244ac110e8c5e0e6 with merge b0d5cf2a95204fb8905e86c88782c44559245515...

@nnethercote nnethercote changed the title Inline <Token as PartialEq<TokenKind>>::eq. Inline a few functions. Sep 28, 2022
@nnethercote
Copy link
Contributor Author

@bors try @rust-timer queue

@rust-timer
Copy link
Collaborator

Awaiting bors try build completion.

@rustbot label: +S-waiting-on-perf

@bors
Copy link
Contributor

bors commented Sep 28, 2022

⌛ Trying commit 231178aeba03c56adaf5c48329d29a6a40eb5c60 with merge f90e674e81710053826e127de1f914154544085d...

@bors
Copy link
Contributor

bors commented Sep 28, 2022

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

@rust-timer
Copy link
Collaborator

Queued f90e674e81710053826e127de1f914154544085d with parent d6734be, future comparison URL.

@rust-timer
Copy link
Collaborator

Finished benchmarking commit (f90e674e81710053826e127de1f914154544085d): comparison URL.

Overall result: ❌✅ regressions and improvements - ACTION NEEDED

Benchmarking this pull request likely means that it is perf-sensitive, so we're automatically marking it as not fit for rolling up. While you can manually mark this PR as fit for rollup, we strongly recommend not doing so since this PR may lead to changes in compiler perf.

Next Steps: If you can justify the regressions found in this try perf run, please indicate this with @rustbot label: +perf-regression-triaged along with sufficient written justification. If you cannot justify the regressions please fix the regressions and do another perf run. If the next run shows neutral or positive results, the label will be automatically removed.

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

Instruction count

This is a highly reliable metric that was used to determine the overall result at the top of this comment.

mean1 range count2
Regressions ❌
(primary)
0.7% [0.6%, 0.8%] 6
Regressions ❌
(secondary)
1.9% [1.9%, 1.9%] 1
Improvements ✅
(primary)
-0.4% [-1.1%, -0.2%] 50
Improvements ✅
(secondary)
-0.8% [-2.6%, -0.3%] 48
All ❌✅ (primary) -0.3% [-1.1%, 0.8%] 56

Max RSS (memory usage)

Results

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean1 range count2
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
3.4% [2.9%, 3.7%] 3
Improvements ✅
(primary)
-3.2% [-3.2%, -3.2%] 1
Improvements ✅
(secondary)
-1.2% [-1.2%, -1.2%] 1
All ❌✅ (primary) -3.2% [-3.2%, -3.2%] 1

Cycles

Results

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean1 range count2
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
4.2% [4.2%, 4.2%] 1
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-3.8% [-4.8%, -2.8%] 8
All ❌✅ (primary) - - 0

Footnotes

  1. the arithmetic mean of the percent change 2 3

  2. number of relevant changes 2 3

@rustbot rustbot added perf-regression Performance regression. S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-perf Status: Waiting on a perf run to be completed. labels Sep 28, 2022
@nnethercote
Copy link
Contributor Author

Uniformly good results except for diesel. Local profiling shows that the inlining of super_fold_with causes the regressions for diesel, so I'll do another perf run without that to see the overall effects.

@bors try @rust-timer queue

@rust-timer
Copy link
Collaborator

Awaiting bors try build completion.

@rustbot label: +S-waiting-on-perf

@rustbot rustbot added the S-waiting-on-perf Status: Waiting on a perf run to be completed. label Sep 28, 2022
@bors
Copy link
Contributor

bors commented Sep 28, 2022

⌛ Trying commit 0a4cf9b883195836b9f87284d1c8da81a6681f31 with merge 6998a6c1db6cde8b3e4219c0ddda34e78137c7e4...

@bors
Copy link
Contributor

bors commented Sep 29, 2022

☀️ Try build successful - checks-actions
Build commit: 6998a6c1db6cde8b3e4219c0ddda34e78137c7e4 (6998a6c1db6cde8b3e4219c0ddda34e78137c7e4)

@rust-timer
Copy link
Collaborator

Queued 6998a6c1db6cde8b3e4219c0ddda34e78137c7e4 with parent ce7f0f1, future comparison URL.

@rust-timer
Copy link
Collaborator

Finished benchmarking commit (6998a6c1db6cde8b3e4219c0ddda34e78137c7e4): comparison URL.

Overall result: ✅ improvements - no action needed

Benchmarking this pull request likely means that it is perf-sensitive, so we're automatically marking it as not fit for rolling up. While you can manually mark this PR as fit for rollup, we strongly recommend not doing so since this PR may lead to changes in compiler perf.

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

Instruction count

This is a highly reliable metric that was used to determine the overall result at the top of this comment.

mean1 range count2
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-0.4% [-1.0%, -0.2%] 57
Improvements ✅
(secondary)
-0.7% [-2.5%, -0.2%] 44
All ❌✅ (primary) -0.4% [-1.0%, -0.2%] 57

Max RSS (memory usage)

Results

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean1 range count2
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
2.1% [2.1%, 2.1%] 1
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) - - 0

Cycles

Results

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean1 range count2
Regressions ❌
(primary)
2.9% [2.9%, 2.9%] 1
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-4.1% [-5.7%, -2.7%] 8
All ❌✅ (primary) 2.9% [2.9%, 2.9%] 1

Footnotes

  1. the arithmetic mean of the percent change 2 3

  2. number of relevant changes 2 3

@rustbot rustbot removed S-waiting-on-perf Status: Waiting on a perf run to be completed. perf-regression Performance regression. labels Sep 29, 2022
@nnethercote
Copy link
Contributor Author

Perf results look slightly better without the super_fold_ty inlining.

r? @lqd

@lqd
Copy link
Member

lqd commented Sep 29, 2022

Great finds, @bors r+

@bors
Copy link
Contributor

bors commented Sep 29, 2022

📌 Commit a8d5c00 has been approved by lqd

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Sep 29, 2022
@bors
Copy link
Contributor

bors commented Sep 30, 2022

⌛ Testing commit a8d5c00 with merge 4a0ee3c...

@bors
Copy link
Contributor

bors commented Sep 30, 2022

☀️ Test successful - checks-actions
Approved by: lqd
Pushing 4a0ee3c to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Sep 30, 2022
@bors bors merged commit 4a0ee3c into rust-lang:master Sep 30, 2022
@rustbot rustbot added this to the 1.66.0 milestone Sep 30, 2022
@rust-timer
Copy link
Collaborator

Finished benchmarking commit (4a0ee3c): comparison URL.

Overall result: ✅ improvements - no action needed

@rustbot label: -perf-regression

Instruction count

This is a highly reliable metric that was used to determine the overall result at the top of this comment.

mean1 range count2
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-0.4% [-1.0%, -0.2%] 60
Improvements ✅
(secondary)
-0.8% [-2.3%, -0.3%] 42
All ❌✅ (primary) -0.4% [-1.0%, -0.2%] 60

Max RSS (memory usage)

Results

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean1 range count2
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
5.6% [5.6%, 5.6%] 1
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-3.6% [-4.9%, -2.0%] 3
All ❌✅ (primary) - - 0

Cycles

Results

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean1 range count2
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-3.4% [-3.4%, -3.4%] 1
Improvements ✅
(secondary)
-3.8% [-5.4%, -2.0%] 9
All ❌✅ (primary) -3.4% [-3.4%, -3.4%] 1

Footnotes

  1. the arithmetic mean of the percent change 2 3

  2. number of relevant changes 2 3

@nnethercote nnethercote deleted the inline-Token-PartialEq branch September 30, 2022 21:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
merged-by-bors This PR was explicitly merged by bors. S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. 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.

5 participants