-
Notifications
You must be signed in to change notification settings - Fork 6.1k
8357424: [JVMCI] Avoid incrementing decompilation count for hosted compiled nmethod #25356
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
|
👋 Welcome back yzheng! A progress list of the required criteria for merging this PR into |
|
@mur47x111 This change now passes all automated pre-integration checks. ℹ️ This project also has non-automated pre-integration requirements. Please see the file CONTRIBUTING.md for details. After integration, the commit message for the final commit will be: You can use pull request commands such as /summary, /contributor and /issue to adjust it as needed. At the time when this comment was updated there had been 9 new commits pushed to the
As there are no conflicts, your changes will automatically be rebased on top of these commits when integrating. If you prefer to avoid this automatic rebasing, please check the documentation for the /integrate command for further details. ➡️ To integrate this PR with the above commit message to the |
|
@mur47x111 The following labels will be automatically applied to this pull request:
When this pull request is ready to be reviewed, an "RFR" email will be sent to the corresponding mailing lists. If you would like to change these labels, use the /label pull request command. |
Webrevs
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good.
|
I think there are two levels of counters that we might want to disable. We definitely want to stop deopts and recompilations from marking the method not compilable which the current change does. Additionally JVMCIRuntime::register_method will perform this logic if validate_compile_task_dependencies fails and I don't think we want that. I think the new The second level is to stop all counter updates in hosted compiles, for similar reasons. Those updates won't lead to disabling compilation but they will quickly lead to saturating of all the counters which is fairly pointless but probably benign. This would be done by setting |
|
@tkrodriguez by |
|
Yes. Any update to the MDO for hosted compiles doesn't seem useful I think. |
Added tag jdk-26+2 for changeset d7aa349
Added tag jdk-26+3 for changeset 08b1fa4
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Thanks.
|
Thanks for the review! Passed Tier1-3 |
|
Going to push as commit ea86a20.
Your commit was automatically rebased without conflicts. |
|
@mur47x111 Pushed as commit ea86a20. 💡 You may see a message that your pull request was closed with unmerged commits. This can be safely ignored. |
Hosted Truffle compilations are installed on the OptimizedCallTarget#profiledPERoot method. Any deoptimization contributes to its decompile count, which can easily exceed the PerMethodRecompilationCutoff threshold, permanently preventing highest tier compilation on this method. This PR exempts hosted compilations from this cutoff by ensuring their decompile count is not incremented for hosted compiled nmethods.
Progress
Issue
Reviewers
Reviewing
Using
gitCheckout this PR locally:
$ git fetch https://git.openjdk.org/jdk.git pull/25356/head:pull/25356$ git checkout pull/25356Update a local copy of the PR:
$ git checkout pull/25356$ git pull https://git.openjdk.org/jdk.git pull/25356/headUsing Skara CLI tools
Checkout this PR locally:
$ git pr checkout 25356View PR using the GUI difftool:
$ git pr show -t 25356Using diff file
Download this PR as a diff file:
https://git.openjdk.org/jdk/pull/25356.diff
Using Webrev
Link to Webrev Comment