-
Notifications
You must be signed in to change notification settings - Fork 127
8350483: AArch64: turn on signum intrinsics by default on Ampere CPUs #1606
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
8350483: AArch64: turn on signum intrinsics by default on Ampere CPUs #1606
Conversation
👋 Welcome back qpzhang! A progress list of the required criteria for merging this PR into |
@cnqpzhang 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 As you do not have Committer status in this project an existing Committer must agree to sponsor your change. ➡️ To flag this PR as ready for integration with the above commit message, type |
This backport pull request has now been updated with issue from the original commit. |
|
/approval request the backport is straight-forward with the code changes safely confined to AArch64-port Ampere CPUs. These changes have been thoroughly verified on the Ampere-1A system, presenting a very low risk to the target jdk21u-dev branch. The fix is for not only for performance but also can be regarded as a function-wise patch. Because the worst-case performance comparison revealed a significant disparity between the patched and base versions, that the unpatched version taking 80~100x longer than normal cases, severely impacting the |
@cnqpzhang |
/integrate |
@cnqpzhang |
Mailing list message from Patrick Zhang OS on jdk-updates-dev: Could any committer please help to sponsor this backport? It has been approved just now. Thanks. Regards, Patrick -----Original Message----- Backport the commit to set -XX:+UseSignumIntrinsic by default for Ampere CPUs. It is to fix performance problem observed on JMH cases vm.compiler.Signum|java.lang.*MathBench.sig[nN]um*. In the worst test cases, run speed is 1~2% of the expected (patched) and functions got severely impacted. So, the fix can be regarded not only a performance fix but also a function **defect** fixing in a manner, which can be a point to support this backport request too. The commit is in jdk mainline and got successfully merged to jdk24u. It is of low risk as the patch is limited to Ampere CPUs only and well tested on Ampere-1A with related jmh and jtreg tier1 tests. ------------- Commit messages: Changes: https://git.openjdk.org/jdk21u-dev/pull/1606/files PR: https://git.openjdk.org/jdk21u-dev/pull/1606 |
/sponsor |
Going to push as commit 3c0c998. |
@theRealAph @cnqpzhang Pushed as commit 3c0c998. 💡 You may see a message that your pull request was closed with unmerged commits. This can be safely ignored. |
Backport the commit to set -XX:+UseSignumIntrinsic by default for Ampere CPUs. It is to fix performance problem observed on JMH cases vm.compiler.Signum|java.lang.MathBench.sig[nN]um. In the worst test cases, run speed is 1~2% of the expected (patched) and functions got severely impacted. So, the fix can be regarded not only a performance fix but also a function defect fixing in a manner, which can be a point to support this backport request too.
The commit is in jdk mainline and got successfully merged to jdk24u. It is of low risk as the patch is limited to Ampere CPUs only and well tested on Ampere-1A with related jmh and jtreg tier1 tests.
Progress
Issue
Reviewing
Using
git
Checkout this PR locally:
$ git fetch https://git.openjdk.org/jdk21u-dev.git pull/1606/head:pull/1606
$ git checkout pull/1606
Update a local copy of the PR:
$ git checkout pull/1606
$ git pull https://git.openjdk.org/jdk21u-dev.git pull/1606/head
Using Skara CLI tools
Checkout this PR locally:
$ git pr checkout 1606
View PR using the GUI difftool:
$ git pr show -t 1606
Using diff file
Download this PR as a diff file:
https://git.openjdk.org/jdk21u-dev/pull/1606.diff
Using Webrev
Link to Webrev Comment