[aarch64-port-dev ] [10] RFR(S): JDK-8184943: AARCH64: Intrinsify hasNegatives

Stuart Monteith stuart.monteith at linaro.org
Thu Jul 20 13:12:03 UTC 2017


Hi,
   I'm going to try the patches on all of my machines, and compare, as
well as a proper visual review. The APM seems generally free of vices,
not needing a lot of fussy code.

BR,
   Stuart

On 20 July 2017 at 13:55, Andrew Haley <aph at redhat.com> wrote:
> Hi,
>
> On 20/07/17 11:03, Dmitrij Pochepko wrote:
>
>> Please review this small webrev [1] that implements an enhancement [2] which adds has_negatives intrinsic to AARCH64 OpenJDK port. This intrinsic performs better than c2-compiled code for every array size tried:
>
> Yay!  We're off to the races!
>
> Yours:
>
> Benchmark                       (length)  Mode  Cnt      Score   Error  Units
> HasNegatives.loopingFastMethod         4  avgt    5   6680.619 ? 0.953  ns/op
> HasNegatives.loopingFastMethod        31  avgt    5  12936.791 ? 1.599  ns/op
> HasNegatives.loopingFastMethod        65  avgt    5  14604.253 ? 2.088  ns/op
> HasNegatives.loopingFastMethod       101  avgt    5  19606.385 ? 7.751  ns/op
> HasNegatives.loopingFastMethod       256  avgt    5  30858.498 ? 1.225  ns/op
>
>
> Stuart's:
>
> Benchmark                       (length)  Mode  Cnt      Score   Error  Units
> HasNegatives.loopingFastMethod         4  avgt    5   5013.024 ? 0.572  ns/op
> HasNegatives.loopingFastMethod        31  avgt    5   9186.044 ? 2.439  ns/op
> HasNegatives.loopingFastMethod        65  avgt    5  13769.220 ? 1.879  ns/op
> HasNegatives.loopingFastMethod       101  avgt    5  15854.385 ? 2.482  ns/op
> HasNegatives.loopingFastMethod       256  avgt    5  26691.626 ? 3.523  ns/op
>
> I didn't expect a big difference.  Note that the really important measurement
> is on length ~31, which is very common.
>
> Benchmark at http://cr.openjdk.java.net/~aph/HasNegativesBench/.  Test was on
> APM.
>
> --
> Andrew Haley
> Java Platform Lead Engineer
> Red Hat UK Ltd. <https://www.redhat.com>
> EAC8 43EB D3EF DB98 CC77 2FAD A5CD 6035 332F A671


More information about the hotspot-compiler-dev mailing list