Re: [aarch64-port-dev ] RFR (XXL): 8223347: Integration of Vector API (Incubator): AArch64 backend changes

2020-07-21 Thread Ningsheng Jian
Hi Andrew and all, Since we are getting ready to propose Vector API target to JDK 16 [1]. I have regenerated webrev of aarch64 backend parts from panama repo, which has been rebased to jdk/jdk very recently, by: $ hg update vector-unstable && hg diff -r default > all.patch $ grep "diff -r"

Re: [aarch64-port-dev ] RFR (XXL): 8223347: Integration of Vector API (Incubator): AArch64 backend changes

2020-07-27 Thread Ningsheng Jian
Thank you Erik! Regards, Ningsheng On 7/23/20 9:06 PM, Erik Joelsson wrote: Hello Ningsheng, Build change looks good. /Erik On 2020-07-23 01:02, Ningsheng Jian wrote: Hi Vladimir, Thanks for pointing out this. Yes, I missed that change in shared code. I've regenerated the webrev

Re: [aarch64-port-dev ] RFR (XXL): 8223347: Integration of Vector API (Incubator): AArch64 backend changes

2020-07-23 Thread Ningsheng Jian
Hi Vladimir, Thanks for pointing out this. Yes, I missed that change in shared code. I've regenerated the webrev, with GensrcAdlc.gmk file change included: http://cr.openjdk.java.net/~njian/vectorapi/8223347-integration/aarch64-webrev.01/ Also add build-dev. Thanks, Ningsheng On 7/23/20

Re: [aarch64-port-dev ] RFR (XXL): 8223347: Integration of Vector API (Incubator): AArch64 backend changes

2020-07-30 Thread Ningsheng Jian
On 7/29/20 7:44 PM, Andrew Haley wrote: On 20/07/2020 04:51, Ningsheng Jian wrote: Since we are getting ready to propose Vector API target to JDK 16 [1]. I have regenerated webrev of aarch64 backend parts from panama repo, which has been rebased to jdk/jdk very recently, by: $ hg update vector

Re: RFR: 8264109: Add vectorized implementation for VectorMask.andNot() [v2]

2021-04-02 Thread Ningsheng Jian
On Thu, 1 Apr 2021 03:39:43 GMT, Xiaohong Gong wrote: >> Currently "VectorMask.andNot()" is not vectorized: >> public VectorMask andNot(VectorMask m) { >> // FIXME: Generate good code here. >> return bOp(m, (i, a, b) -> a && !b); >> } >> This can be implemented with`

Re: RFR: 8272861: Add a micro benchmark for vector api

2021-08-23 Thread Ningsheng Jian
On Mon, 23 Aug 2021 23:18:28 GMT, Sandhya Viswanathan wrote: > This pull request adds a micro benchmark for Vector API. > The Black Scholes algorithm is implemented with and without Vector API. > We see about ~6x gain with Vector API for this micro benchmark using 256 bit > vectors.

Re: RFR: 8271515: Integration of JEP 417: Vector API (Third Incubator) [v5]

2021-10-20 Thread Ningsheng Jian
On Wed, 20 Oct 2021 03:13:07 GMT, Nick Gasson wrote: > AArch64 changes look ok apart from some minor comments. Thank you @nick-arm for the review! All your comments have been addressed. - PR: https://git.openjdk.java.net/jdk/pull/5873

Re: RFR: 8271515: Integration of JEP 417: Vector API (Third Incubator) [v3]

2021-10-18 Thread Ningsheng Jian
On Wed, 13 Oct 2021 19:33:12 GMT, Vladimir Kozlov wrote: > C2 and x86 changes seems fine. Could any reviewer please help to review AArch64 changes in this patch? @theRealAph @adinn @nick-arm ? The AArch64 changes include: 1. SVE scalable predicate register allocation support 2. SVE backend

Re: RFR: 8271515: Integration of JEP 417: Vector API (Third Incubator) [v2]

2021-10-14 Thread Ningsheng Jian
On Thu, 14 Oct 2021 17:21:25 GMT, Paul Sandoz wrote: >> This PR improves the performance of vector operations that accept masks on >> architectures that support masking in hardware, specifically Intel AVX512 >> and ARM SVE. >> >> On architectures that do not support masking in hardware the

Re: RFR: 8277659: [TESTBUG] Microbenchmark ThreadOnSpinWaitProducerConsumer.java hangs

2021-11-25 Thread Ningsheng Jian
On Thu, 25 Nov 2021 11:57:52 GMT, Stuart Monteith wrote: > Fix java/lang/ThreadOnSpinWaitProducerConsumer by waiting for consumer thread > to finish before restarting trial method. Looks good to me. - Marked as reviewed by njian (Committer). PR:

Re: RFR: 8271515: Integration of JEP 417: Vector API (Third Incubator) [v7]

2021-11-02 Thread Ningsheng Jian
On Wed, 27 Oct 2021 21:42:29 GMT, Paul Sandoz wrote: >> This PR improves the performance of vector operations that accept masks on >> architectures that support masking in hardware, specifically Intel AVX512 >> and ARM SVE. >> >> On architectures that do not support masking in hardware the

Re: RFR: 8271515: Integration of JEP 417: Vector API (Third Incubator) [v7]

2021-11-04 Thread Ningsheng Jian
On Wed, 3 Nov 2021 03:10:16 GMT, Ningsheng Jian wrote: > Converting from double to long and then narrow to target types did not follow > JLS. I will fix it. Thanks to @fg1417 for helping to find out this issue. Fixed in the new commit. Thanks to @PaulSandoz for integrating the fix! H

Re: RFR: 8282162: [vector] Optimize integral vector negation API [v3]

2022-03-29 Thread Ningsheng Jian
On Mon, 28 Mar 2022 09:56:22 GMT, Xiaohong Gong wrote: >> The current vector `"NEG"` is implemented with substraction a vector by zero >> in case the architecture does not support the negation instruction. And to >> fit the predicate feature for architectures that support it, the masked >>

Re: RFR: 8281712: [REDO] AArch64: Implement string_compare intrinsic in SVE

2022-05-16 Thread Ningsheng Jian
On Mon, 16 May 2022 07:21:27 GMT, Ningsheng Jian wrote: > This is the REDO of JDK-8269559 and JDK-8275448. Those two backouts finally > turned to be some system zlib issue in AArch64 macOS, and is not related to > the patch itself. See [1][2] for details. > > This patch is gen

Re: RFR: 8281712: [REDO] AArch64: Implement string_compare intrinsic in SVE

2022-05-17 Thread Ningsheng Jian
On Tue, 17 May 2022 06:09:11 GMT, Tobias Hartmann wrote: > Sure, I already submitted testing yesterday, it all passed. Thank you, Tobias! - PR: https://git.openjdk.java.net/jdk/pull/8723

RFR: 8281712: [REDO] AArch64: Implement string_compare intrinsic in SVE

2022-05-16 Thread Ningsheng Jian
This is the REDO of JDK-8269559 and JDK-8275448. Those two backouts finally turned to be some system zlib issue in AArch64 macOS, and is not related to the patch itself. See [1][2] for details. This patch is generally the same as JDK-8275448, which uses SVE to optimize string_compare

Integrated: 8281712: [REDO] AArch64: Implement string_compare intrinsic in SVE

2022-05-17 Thread Ningsheng Jian
On Mon, 16 May 2022 07:21:27 GMT, Ningsheng Jian wrote: > This is the REDO of JDK-8269559 and JDK-8275448. Those two backouts finally > turned to be some system zlib issue in AArch64 macOS, and is not related to > the patch itself. See [1][2] for details. > > This patch is gen

Re: RFR: 8281712: [REDO] AArch64: Implement string_compare intrinsic in SVE

2022-05-17 Thread Ningsheng Jian
On Tue, 17 May 2022 08:37:52 GMT, Nick Gasson wrote: > LGTM! Thank you, Nick! - PR: https://git.openjdk.java.net/jdk/pull/8723

Re: RFR: 8284960: Integration of JEP 426: Vector API (Fourth Incubator) [v6]

2022-05-19 Thread Ningsheng Jian
On Wed, 18 May 2022 23:22:42 GMT, Vladimir Ivanov wrote: > Interesting. But AArch64 code does cover vector cases which just adds > confusion. `UsePopCountInsturction` is always true in AArch64. @XiaohongGong removed the `predicate` in aarch64 rules, and I think we can even remove the option