RFR: 8211908: PPC64: Enable SuperWordLoopUnrollAnalysis by default
Dear all, Would you please review this simple change? Bug: https://bugs.openjdk.java.net/browse/JDK-8211908 Webrev: http://cr.openjdk.java.net/~mhorie/8211908/webrev.00 Since PPC64 supports SLP with VSX, we can have the benefit from enabled SuperWordLoopUnrollAnalysis on PPC64. In the attached micro benchmarks, performance improved by 1.7x at maximum. In SPECjvm2008, the score improved by a couple of % in xml.validation and scimark.lu.large (See attached file: microbench_slp.tar.gz) Best regards, -- Michihiro, IBM Research - Tokyo
Hi Michihiro, looks good. Thanks for doing some performance measurements. The change itself could be considered as trivial, but the impact may be significant, so I'd appreciate a 2nd review. We already tested this flag in our nightly tests for a few weeks and didn't see any issues. It's also enabled on other platforms which use vector instructions so I think we should use it on PPC, too. Best regards, Martin From: Michihiro Horie <HORIE@jp.ibm.com> Sent: Dienstag, 9. Oktober 2018 09:11 To: hotspot compiler <hotspot-compiler-dev@openjdk.java.net>; ppc-aix-port-dev@openjdk.java.net Cc: Doerr, Martin <martin.doerr@sap.com>; Lindenmaier, Goetz <goetz.lindenmaier@sap.com>; Gustavo Romero <gromero@linux.vnet.ibm.com> Subject: RFR: 8211908: PPC64: Enable SuperWordLoopUnrollAnalysis by default Dear all, Would you please review this simple change? Bug: https://bugs.openjdk.java.net/browse/JDK-8211908 Webrev: http://cr.openjdk.java.net/~mhorie/8211908/webrev.00 Since PPC64 supports SLP with VSX, we can have the benefit from enabled SuperWordLoopUnrollAnalysis on PPC64. In the attached micro benchmarks, performance improved by 1.7x at maximum. In SPECjvm2008, the score improved by a couple of % in xml.validation and scimark.lu.large (See attached file: microbench_slp.tar.gz) Best regards, -- Michihiro, IBM Research - Tokyo
Hi Martin,
looks good. Thanks for doing some performance measurements.
The change itself could be considered as trivial, but the impact may be significant, so I’d appreciate a 2nd review.
We already tested this flag in our nightly tests for a few weeks and didn’t see any issues. It’s also enabled on other platforms which use vector instructions so I think we should use it on PPC, too. Thank a lot for your review!
Best regards, -- Michihiro, IBM Research - Tokyo From: "Doerr, Martin" <martin.doerr@sap.com> To: Michihiro Horie <HORIE@jp.ibm.com>, hotspot compiler <hotspot-compiler-dev@openjdk.java.net>, "ppc-aix-port-dev@openjdk.java.net" <ppc-aix-port-dev@openjdk.java.net> Cc: "Lindenmaier, Goetz" <goetz.lindenmaier@sap.com>, Gustavo Romero <gromero@linux.vnet.ibm.com> Date: 2018/10/09 22:31 Subject: RE: 8211908: PPC64: Enable SuperWordLoopUnrollAnalysis by default Hi Michihiro, looks good. Thanks for doing some performance measurements. The change itself could be considered as trivial, but the impact may be significant, so I’d appreciate a 2nd review. We already tested this flag in our nightly tests for a few weeks and didn’t see any issues. It’s also enabled on other platforms which use vector instructions so I think we should use it on PPC, too. Best regards, Martin From: Michihiro Horie <HORIE@jp.ibm.com> Sent: Dienstag, 9. Oktober 2018 09:11 To: hotspot compiler <hotspot-compiler-dev@openjdk.java.net>; ppc-aix-port-dev@openjdk.java.net Cc: Doerr, Martin <martin.doerr@sap.com>; Lindenmaier, Goetz <goetz.lindenmaier@sap.com>; Gustavo Romero <gromero@linux.vnet.ibm.com> Subject: RFR: 8211908: PPC64: Enable SuperWordLoopUnrollAnalysis by default Dear all, Would you please review this simple change? Bug: https://bugs.openjdk.java.net/browse/JDK-8211908 Webrev: http://cr.openjdk.java.net/~mhorie/8211908/webrev.00 Since PPC64 supports SLP with VSX, we can have the benefit from enabled SuperWordLoopUnrollAnalysis on PPC64. In the attached micro benchmarks, performance improved by 1.7x at maximum. In SPECjvm2008, the score improved by a couple of % in xml.validation and scimark.lu.large (See attached file: microbench_slp.tar.gz) Best regards, -- Michihiro, IBM Research - Tokyo
Hi Michihiro, the change looks good. We ran all our tests of jdk11u with the change, they are quite comprehensive. This greatly reduces the chance of hidden error like spilling of vector registers etc. Best regards, Goetz.
-----Original Message----- From: Michihiro Horie <HORIE@jp.ibm.com> Sent: Dienstag, 9. Oktober 2018 09:11 To: hotspot compiler <hotspot-compiler-dev@openjdk.java.net>; ppc-aix- port-dev@openjdk.java.net Cc: Doerr, Martin <martin.doerr@sap.com>; Lindenmaier, Goetz <goetz.lindenmaier@sap.com>; Gustavo Romero <gromero@linux.vnet.ibm.com> Subject: RFR: 8211908: PPC64: Enable SuperWordLoopUnrollAnalysis by default
Dear all,
Would you please review this simple change? Bug: https://bugs.openjdk.java.net/browse/JDK-8211908 Webrev: http://cr.openjdk.java.net/~mhorie/8211908/webrev.00
Since PPC64 supports SLP with VSX, we can have the benefit from enabled SuperWordLoopUnrollAnalysis on PPC64.
In the attached micro benchmarks, performance improved by 1.7x at maximum. In SPECjvm2008, the score improved by a couple of % in xml.validation and scimark.lu.large
(See attached file: microbench_slp.tar.gz)
Best regards, -- Michihiro, IBM Research - Tokyo
Hi Goetz,
the change looks good.
We ran all our tests of jdk11u with the change, they are quite comprehensive. This greatly reduces the chance of hidden error like spilling of vector registers etc. Thanks a lot, Goetz! I am grateful for your tests, which sound quite helpful to find corner cases.
Best regards, -- Michihiro, IBM Research - Tokyo From: "Lindenmaier, Goetz" <goetz.lindenmaier@sap.com> To: Michihiro Horie <HORIE@jp.ibm.com>, hotspot compiler <hotspot-compiler-dev@openjdk.java.net>, "ppc-aix-port-dev@openjdk.java.net" <ppc-aix-port-dev@openjdk.java.net> Cc: "Doerr, Martin" <martin.doerr@sap.com>, Gustavo Romero <gromero@linux.vnet.ibm.com> Date: 2018/10/10 16:42 Subject: RE: 8211908: PPC64: Enable SuperWordLoopUnrollAnalysis by default Hi Michihiro, the change looks good. We ran all our tests of jdk11u with the change, they are quite comprehensive. This greatly reduces the chance of hidden error like spilling of vector registers etc. Best regards, Goetz.
-----Original Message----- From: Michihiro Horie <HORIE@jp.ibm.com> Sent: Dienstag, 9. Oktober 2018 09:11 To: hotspot compiler <hotspot-compiler-dev@openjdk.java.net>; ppc-aix- port-dev@openjdk.java.net Cc: Doerr, Martin <martin.doerr@sap.com>; Lindenmaier, Goetz <goetz.lindenmaier@sap.com>; Gustavo Romero <gromero@linux.vnet.ibm.com> Subject: RFR: 8211908: PPC64: Enable SuperWordLoopUnrollAnalysis by default
Dear all,
Would you please review this simple change? Bug: https://bugs.openjdk.java.net/browse/JDK-8211908
Webrev: http://cr.openjdk.java.net/~mhorie/8211908/webrev.00
Since PPC64 supports SLP with VSX, we can have the benefit from enabled SuperWordLoopUnrollAnalysis on PPC64.
In the attached micro benchmarks, performance improved by 1.7x at maximum. In SPECjvm2008, the score improved by a couple of % in xml.validation and scimark.lu.large
(See attached file: microbench_slp.tar.gz)
Best regards, -- Michihiro, IBM Research - Tokyo
participants (3)
-
Doerr, Martin
-
Lindenmaier, Goetz
-
Michihiro Horie