-
Notifications
You must be signed in to change notification settings - Fork 5.9k
8357481: Excessive CompileTask wait/notify monitor creation #25364
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 shade! A progress list of the required criteria for merging this PR into |
@shipilev 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 1 new commit pushed to the
Please see this link for an up-to-date comparison between the source branch of this pull request and the ➡️ To integrate this PR with the above commit message to the |
Webrevs
|
Testing is all green here. Waiting for reviews :) |
Isn't it true that we only have one CompileTask per CompilerThread? Would it make sense to move this monitor into the CompilerThread instead? |
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.
It feels awkward to me to have a logically |
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.
Good.
Thanks! I think I'll wait for AOT JEPs to land into mainline first, to avoid breaking them accidentally. Do you know when those integrate? |
Waiting PIT testing results. |
I see AOT profiles JEP landed in mainline. Re-merged (cleanly) from current master, re-ran some tests. |
Is this ready for retesting? |
Yes, please. There is a long weekend in Germany, so I think I'll integrate only next week, though. |
I started testing. |
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.
My testing passed without new failures.
Thanks for testing! I remerged locally with current master, ran /integrate |
Going to push as commit b3594c9.
Your commit was automatically rebased without conflicts. |
See bug for rationale.
This PR implements the 2nd solution from the bug: lift the lock to be global. As described in the bug, excess locking work would realistically affect Xcomp, and only in a minor way. But we will reap a minor footprint/latency benefit by not constructing the lock for every
CompileTask
.Additional testing:
compiler
all
all
Progress
Issue
Reviewers
Reviewing
Using
git
Checkout this PR locally:
$ git fetch https://git.openjdk.org/jdk.git pull/25364/head:pull/25364
$ git checkout pull/25364
Update a local copy of the PR:
$ git checkout pull/25364
$ git pull https://git.openjdk.org/jdk.git pull/25364/head
Using Skara CLI tools
Checkout this PR locally:
$ git pr checkout 25364
View PR using the GUI difftool:
$ git pr show -t 25364
Using diff file
Download this PR as a diff file:
https://git.openjdk.org/jdk/pull/25364.diff
Using Webrev
Link to Webrev Comment