-
Notifications
You must be signed in to change notification settings - Fork 207
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
8280784: VM_Cleanup unnecessarily processes all thread oops #889
Conversation
👋 Welcome back shade! A progress list of the required criteria for merging this PR into |
This backport pull request has now been updated with issue from the original commit. |
@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 no new commits pushed to the ➡️ To integrate this PR with the above commit message to the |
Webrevs
|
@shipilev This pull request has been inactive for more than 4 weeks and will be automatically closed if another 4 weeks passes without any activity. To avoid this, simply add a new comment to the pull request. Feel free to ask for assistance if you need help with progressing this pull request towards integration! |
@stefank, would you like to ack this? |
/integrate |
Clean backport of performance enhancement for GCs that do concurrent thread roots (in JDK 17u those are Shenandoah and Z). On my machine, with Shenandoah running 20K threads, the safepoint cleanup time for "Cleanup" VM ops dropped from 2ms to nearly zero. A possible follow-up would be JDK-8280817, which would extend this to other "empty" ops.
Additional testing:
tier1
,tier2
tier1
,tier2
with-XX:+DeoptimizeALot
tier1
,tier2
with-XX:+UseShenandoahGC
Progress
Issue
Reviewers
Reviewing
Using
git
Checkout this PR locally:
$ git fetch https://git.openjdk.org/jdk17u-dev pull/889/head:pull/889
$ git checkout pull/889
Update a local copy of the PR:
$ git checkout pull/889
$ git pull https://git.openjdk.org/jdk17u-dev pull/889/head
Using Skara CLI tools
Checkout this PR locally:
$ git pr checkout 889
View PR using the GUI difftool:
$ git pr show -t 889
Using diff file
Download this PR as a diff file:
https://git.openjdk.org/jdk17u-dev/pull/889.diff