-
-
Notifications
You must be signed in to change notification settings - Fork 14.2k
Perf regression fix #150056
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
Perf regression fix #150056
Conversation
|
@rust-timer build 9124eca |
|
@Kobzol how do i run this |
|
@bors try @rust-timer queue |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
trying to address perf regression
This comment has been minimized.
This comment has been minimized.
|
Finished benchmarking commit (48c5d38): comparison URL. Overall result: ✅ improvements - no action neededBenchmarking 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. @bors rollup=never Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (primary 2.1%, secondary 2.2%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (secondary -2.7%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 479.485s -> 478.535s (-0.20%) |
|
hm, wait how do I even understand if perf is fine? is there a way to check perf between two commits? I believe there's been a numerous amount of changes in this period of time that affects a bootstrap time but on the other hand it's not a 5 second reduce, not sure how to interpret this results |
|
Bootstrap time is not super important here, I would say. Based on the icount results, it looks like this change does indeed fix the regression! |
|
r? @SparrowLii rustbot has assigned @SparrowLii. Use |
|
r? @davidtwco |
Ah, thanks for the clarification! |
9124eca to
fc0d01b
Compare
|
I want to try different approach, should be even better, do I need to rerun bors try before next perf run? |
|
Yes, rustc-perf always benchmarks the result of the try build :) @bors try @rust-timer queue |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
|
Finished benchmarking commit (da3c48f): comparison URL. Overall result: ✅ improvements - no action neededBenchmarking 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. @bors rollup=never Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (primary 2.0%, secondary -0.3%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (secondary 3.1%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 479.038s -> 478.549s (-0.10%) |
|
looks slightly better right? |
|
Looks pretty much the same to me. |
|
Nominate this to beta backport as was discussed on todays triage meeting because it's a follow up on a beta accepted PR @rustbot label +beta-nominated |
|
@bors r+ |
|
☀️ Test successful - checks-actions |
What is this?This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.Comparing b889870 (parent) -> 806c2a3 (this PR) Test differencesShow 2 test diffs2 doctest diffs were found. These are ignored, as they are noisy. Test dashboardRun cargo run --manifest-path src/ci/citool/Cargo.toml -- \
test-dashboard 806c2a35dcc1db7867864fea0a7a65554a5238b7 --output-dir test-dashboardAnd then open Job duration changes
How to interpret the job duration changes?Job durations can vary a lot, based on the actual runner instance |
|
Finished benchmarking commit (806c2a3): comparison URL. Overall result: ✅ improvements - no action needed@rustbot label: -perf-regression Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (primary -3.5%, secondary 1.6%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (primary 6.7%, secondary 4.7%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 479.396s -> 477.964s (-0.30%) |
The only thing changed from the previous PR is that I removed
output_is_inhabitedfrom hot path, and hide it behind condition, so now it will compute it less frequentfollow up on #149664