-
Notifications
You must be signed in to change notification settings - Fork 146
8269304: Regression ~5% in 2005 in b27 #155
Conversation
👋 Welcome back kvn! A progress list of the required criteria for merging this PR into |
if (size != locks_list->origin_cnt()) { | ||
if (size == 0) { | ||
unbalanced = false; // All locks were eliminated - good | ||
} else if (size != locks_list->origin_cnt()) { |
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.
The size == 0 case makes sense. Is there a possible situation where some locks were removed, but the remaining are still balanced?
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.
Yes. For example, if one of branches in case 1 is eliminated after locks/unlocks marked as coarsened:
https://github.com/openjdk/jdk/blob/master/src/hotspot/share/opto/callnode.cpp#L1779
jbb2005 does not have such cases. And It would be really hard to separate such case from failing case in current implementation.
I have RFE 8268571 it improve locks elimination I hope I can work on in JDK 18.
@vnkozlov 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 3 new commits 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 |
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 to me.
Thank you, Dean and Roland. |
/integrate |
Going to push as commit 8d09596.
Your commit was automatically rebased without conflicts. |
JDK-8268347 changes missed check for valid case when all locks/unlocks in coarsened group were eliminated.
As result methods were recompiled without locks coarsening optimization leaving locks in code.
Tested tier1-3, xcomp, performance.
Progress
Issue
Reviewers
Reviewing
Using
git
Checkout this PR locally:
$ git fetch https://git.openjdk.java.net/jdk17 pull/155/head:pull/155
$ git checkout pull/155
Update a local copy of the PR:
$ git checkout pull/155
$ git pull https://git.openjdk.java.net/jdk17 pull/155/head
Using Skara CLI tools
Checkout this PR locally:
$ git pr checkout 155
View PR using the GUI difftool:
$ git pr show -t 155
Using diff file
Download this PR as a diff file:
https://git.openjdk.java.net/jdk17/pull/155.diff