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

rustdoc: reduce allocations when generating tooltips #108098

Merged
merged 1 commit into from
Feb 28, 2023

Conversation

notriddle
Copy link
Contributor

An attempt to reduce the perf regression in
#108052 (comment)

@rustbot
Copy link
Collaborator

rustbot commented Feb 15, 2023

r? @jsha

(rustbot has picked a reviewer for you, use r? to override)

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. labels Feb 15, 2023
@notriddle
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 Feb 15, 2023
@bors
Copy link
Contributor

bors commented Feb 15, 2023

⌛ Trying commit 2e7799c39a4a201ee4623867c0cf59ea6712b8be with merge c5b37e28d32bc283a9750ebdda99fa6e43f0f341...

@bors
Copy link
Contributor

bors commented Feb 16, 2023

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

1 similar comment
@bors
Copy link
Contributor

bors commented Feb 16, 2023

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

@rust-timer

This comment has been minimized.

@rust-timer
Copy link
Collaborator

Finished benchmarking commit (c5b37e28d32bc283a9750ebdda99fa6e43f0f341): 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-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.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-4.0% [-16.4%, -0.4%] 5
Improvements ✅
(secondary)
-1.0% [-1.0%, -1.0%] 1
All ❌✅ (primary) -4.0% [-16.4%, -0.4%] 5

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.

mean range count
Regressions ❌
(primary)
0.5% [0.5%, 0.5%] 1
Regressions ❌
(secondary)
1.1% [1.1%, 1.1%] 1
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-2.7% [-3.6%, -1.8%] 2
All ❌✅ (primary) 0.5% [0.5%, 0.5%] 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.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-13.4% [-13.4%, -13.4%] 1
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) -13.4% [-13.4%, -13.4%] 1

@rustbot rustbot added A-rustdoc-json Area: Rustdoc JSON backend and removed S-waiting-on-perf Status: Waiting on a perf run to be completed. labels Feb 16, 2023
@notriddle
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 Feb 16, 2023
@bors
Copy link
Contributor

bors commented Feb 16, 2023

⌛ Trying commit 85bc5a75e682d63c7f70366d1311149b8a9dd3c7 with merge 0635e6fe457c2964f5869be28425c5349c69fcd0...

@bors
Copy link
Contributor

bors commented Feb 16, 2023

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

@rust-timer

This comment has been minimized.

@rust-timer
Copy link
Collaborator

Finished benchmarking commit (0635e6fe457c2964f5869be28425c5349c69fcd0): 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-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.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
0.2% [0.2%, 0.2%] 1
Improvements ✅
(primary)
-3.6% [-17.0%, -0.4%] 6
Improvements ✅
(secondary)
-1.0% [-1.0%, -1.0%] 1
All ❌✅ (primary) -3.6% [-17.0%, -0.4%] 6

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.

mean range count
Regressions ❌
(primary)
1.3% [1.3%, 1.3%] 1
Regressions ❌
(secondary)
3.3% [1.1%, 5.6%] 2
Improvements ✅
(primary)
-3.8% [-3.8%, -3.8%] 1
Improvements ✅
(secondary)
-1.0% [-1.0%, -1.0%] 1
All ❌✅ (primary) -1.3% [-3.8%, 1.3%] 2

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.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-14.0% [-14.0%, -14.0%] 1
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) -14.0% [-14.0%, -14.0%] 1

@rustbot rustbot added perf-regression Performance regression. and removed S-waiting-on-perf Status: Waiting on a perf run to be completed. labels Feb 16, 2023
@notriddle notriddle force-pushed the notriddle/rustdoc-tooltip-alloc branch from 85bc5a7 to c0c69a5 Compare February 17, 2023 00:26
@notriddle notriddle marked this pull request as ready for review February 17, 2023 00:31
@rustbot
Copy link
Collaborator

rustbot commented Feb 17, 2023

Some changes occurred in src/librustdoc/clean/types.rs

cc @camelid

@bors
Copy link
Contributor

bors commented Feb 19, 2023

☔ The latest upstream changes (presumably #108237) made this pull request unmergeable. Please resolve the merge conflicts.

@bors
Copy link
Contributor

bors commented Feb 27, 2023

📌 Commit 49d995a has been approved by GuillaumeGomez

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 Feb 27, 2023
@bors
Copy link
Contributor

bors commented Feb 27, 2023

⌛ Testing commit 49d995a with merge 63c2ea18ed86e6d0b1839b56d59321717853eb40...

@bors
Copy link
Contributor

bors commented Feb 27, 2023

💔 Test failed - checks-actions

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

@bors retry

Installing awscli failed.

@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 Feb 27, 2023
@rust-log-analyzer
Copy link
Collaborator

A job failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)

@bors
Copy link
Contributor

bors commented Feb 28, 2023

⌛ Testing commit 49d995a with merge d546175093e7aef81ca00c85a76ecaade64cba88...

@bors
Copy link
Contributor

bors commented Feb 28, 2023

💔 Test failed - checks-actions

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

@bors retry

Failed to resolve host crates.io

@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 Feb 28, 2023
@rust-log-analyzer
Copy link
Collaborator

The job dist-x86_64-apple-alt failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)

@bors
Copy link
Contributor

bors commented Feb 28, 2023

⌛ Testing commit 49d995a with merge 5157d93...

@bors
Copy link
Contributor

bors commented Feb 28, 2023

☀️ Test successful - checks-actions
Approved by: GuillaumeGomez
Pushing 5157d93 to master...

1 similar comment
@bors
Copy link
Contributor

bors commented Feb 28, 2023

☀️ Test successful - checks-actions
Approved by: GuillaumeGomez
Pushing 5157d93 to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Feb 28, 2023
@bors bors merged commit 5157d93 into rust-lang:master Feb 28, 2023
@rustbot rustbot added this to the 1.69.0 milestone Feb 28, 2023
@rust-timer
Copy link
Collaborator

Finished benchmarking commit (5157d93): 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.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-5.1% [-17.0%, -0.6%] 4
Improvements ✅
(secondary)
-0.9% [-0.9%, -0.9%] 1
All ❌✅ (primary) -5.1% [-17.0%, -0.6%] 4

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.

mean range count
Regressions ❌
(primary)
1.4% [1.4%, 1.4%] 1
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-2.1% [-3.3%, -0.9%] 2
All ❌✅ (primary) 1.4% [1.4%, 1.4%] 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.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-16.1% [-16.1%, -16.1%] 1
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) -16.1% [-16.1%, -16.1%] 1

@rustbot rustbot removed the perf-regression Performance regression. label Feb 28, 2023
@notriddle notriddle deleted the notriddle/rustdoc-tooltip-alloc branch February 28, 2023 14:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-rustdoc-json Area: Rustdoc JSON backend 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-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.

7 participants