-
Notifications
You must be signed in to change notification settings - Fork 14.1k
Rework instantiation mode selection in monomorphization #128118
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
Conversation
|
@bors try @rust-timer queue |
This comment has been minimized.
This comment has been minimized.
…try> Don't add inlinehint to big closures In an unoptimized incremental build we want as many items as possible to be lowered as GloballyShared, but right now monomorphization makes whole classes of instances all LocalCopy without inspecting the instance's MIR or the session settings. Right now I'm experimenting to see what kind of an impact this can have. I think there's a pretty core design flaw currently because we make monomorphization decisions about Instances, but `cross_crate_inlinable` takes a DefId. r? `@ghost`
|
☀️ Try build successful - checks-actions |
This comment has been minimized.
This comment has been minimized.
|
Finished benchmarking commit (b53ccf2): comparison URL. Overall result: ❌✅ regressions and improvements - ACTION NEEDEDBenchmarking 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 @bors rollup=never Instruction countThis is a highly reliable metric that was used to determine the overall result at the top of this comment.
Max RSS (memory usage)Results (primary -0.6%, secondary 2.8%)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.
CyclesResults (primary 5.8%, secondary -2.0%)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.
Binary sizeResults (primary 2.3%, secondary 2.0%)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.
Bootstrap: 771.348s -> 777.681s (0.82%) |
c47d3f4 to
14b76c9
Compare
|
@bors try |
…try> Rework instantiation mode selection in monomorphization This PR is _extremely_ cooked because I'm just dumping ideas into it that seem good and can bootstrap the compiler without linker errors. I don't know if all the ideas are good yet. r? `@ghost`
This comment has been minimized.
This comment has been minimized.
|
☀️ Try build successful - checks-actions |
|
@rust-timer build e5cfe0b |
This comment has been minimized.
This comment has been minimized.
|
Finished benchmarking commit (e5cfe0b): comparison URL. Overall result: ❌✅ regressions and improvements - BENCHMARK(S) FAILEDBenchmarking 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 @bors rollup=never ❗ ❗ ❗ ❗ ❗
❗ ❗ ❗ ❗ ❗ Instruction countThis is a highly reliable metric that was used to determine the overall result at the top of this comment.
Max RSS (memory usage)Results (primary 6.6%, secondary 6.0%)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.
CyclesResults (primary 15.4%, secondary 5.9%)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.
Binary sizeResults (primary 12.1%, secondary 3.4%)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.
Bootstrap: 769.319s -> 765.958s (-0.44%) |
14b76c9 to
5254f98
Compare
|
@bors try @rust-timer queue |
This comment has been minimized.
This comment has been minimized.
…try> Rework instantiation mode selection in monomorphization This PR is _extremely_ cooked because I'm just dumping ideas into it that seem good and can bootstrap the compiler without linker errors. I don't know if all the ideas are good yet. r? `@ghost`
This comment has been minimized.
This comment has been minimized.
|
☀️ Try build successful - checks-actions |
This comment has been minimized.
This comment has been minimized.
|
Finished benchmarking commit (422545f): comparison URL. Overall result: ❌✅ regressions and improvements - ACTION NEEDEDBenchmarking 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 @bors rollup=never Instruction countThis is a highly reliable metric that was used to determine the overall result at the top of this comment.
Max RSS (memory usage)Results (primary 23.1%, secondary 4.0%)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.
CyclesResults (primary 82.9%, secondary 65.7%)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.
Binary sizeResults (primary 159.5%, secondary 54.7%)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.
Bootstrap: 772.472s -> 768.225s (-0.55%) |
4f0c766 to
0cfe0b4
Compare
|
@bors try @rust-timer queue |
This comment has been minimized.
This comment has been minimized.
…try> Rework instantiation mode selection in monomorphization This PR is _extremely_ cooked because I'm just dumping ideas into it that seem good and can bootstrap the compiler without linker errors. I don't know if all the ideas are good yet. r? `@ghost`
This comment has been minimized.
This comment has been minimized.
|
☀️ Try build successful - checks-actions |
This comment has been minimized.
This comment has been minimized.
|
Finished benchmarking commit (161f3c0): comparison URL. Overall result: ❌✅ regressions and improvements - please read the text belowBenchmarking 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 @bors rollup=never Instruction countThis is the most reliable metric that we have; it was used to determine the overall result at the top of this comment. However, even this metric can sometimes exhibit noise.
Max RSS (memory usage)Results (primary -0.2%, secondary 2.5%)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.
CyclesResults (primary 5.0%, secondary -1.5%)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.
Binary sizeResults (primary 1.8%, secondary 2.2%)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.
Bootstrap: 767.421s -> 772.542s (0.67%) |
0cfe0b4 to
46e0452
Compare
|
The job Click to see the possible cause of the failure (guessed by this bot) |
|
I'm making progress on cleaning up all the logic, so this PR would need to be reworked on top of that anyway. |
This PR is extremely cooked because I'm just dumping ideas into it that seem good and can bootstrap the compiler without linker errors.
I don't know if all the ideas are good yet.
r? @ghost