RFR: 8312425: [vectorapi] AArch64: Optimize vector math operations with SLEEF [v2]

Robbin Ehn rehn at openjdk.org
Thu Mar 14 11:22:43 UTC 2024


On Thu, 14 Mar 2024 09:14:04 GMT, Hamlin Li <mli at openjdk.org> wrote:

>> Hi,
>> Can you help to review this patch?
>> Thanks
>> 
>> This is a continuation of work based on [1] by @XiaohongGong, most work was done in that pr. In this new pr, just rebased the code in [1], then added some minor changes (renaming of calling method, add libsleef as extra lib in CI cross-build on aarch64 in github workflow); I aslo tested the combination of following scenarios:
>> * at build time
>>   * with/without sleef
>>   * with/without sve support 
>> * at runtime
>>   * with/without sleef
>>   * with/without sve support 
>> 
>> [1] https://github.com/openjdk/jdk/pull/16234
>> 
>> ## Regression Test
>> * test/jdk/jdk/incubator/vector/
>> * test/hotspot/jtreg/compiler/vectorapi/
>> 
>> ## Performance Test
>> Previously, @XiaohongGong has shared the data: https://github.com/openjdk/jdk/pull/16234#issuecomment-1767727028
>
> Hamlin Li has updated the pull request incrementally with one additional commit since the last revision:
> 
>   fix variable name in github workflow

Hi, thanks for continuing with this.

As this is similar to SVML, comments applies to x86 also:

- There is no way to stop the VM from trying to load vmath ?
  There is both a UseNeon and a UseSVE, if I set both to false I would expect no vector and no vmath.
  The issue with UseNeon not really guarding neon code, but just crc, seems like a pre-existing bug.
  A flag like 'UseNeon' should turn it on/off :)

- Doing open dll form stubrountines seems wrong.

@dholmes-ora could I get your opinion here?

-------------

PR Comment: https://git.openjdk.org/jdk/pull/18294#issuecomment-1997219968


More information about the build-dev mailing list