RFR: 8312425: [vectorapi] AArch64: Optimize vector math operations with SLEEF
Hamlin Li
mli at openjdk.org
Fri Apr 5 12:17:17 UTC 2024
On Thu, 4 Apr 2024 16:47:44 GMT, Magnus Ihse Bursie <ihse at openjdk.org> wrote:
> Build libsleef using their cmake system and look at the compile command line. (You do this by `VERBOSE=1 cmake` IIRC). Then you can see what flags they are using. This is what I was referring to as "normal libsleef build". I noticed there were a lot of compiler flags. I can't say if they are needed or not. In most cases, if it compilers, it's fine, but in this case, I guess some flags can be crucial to really get the kind of performance you need, and it might not be easy to spot that something is wrong if you get them incorrect. I assume one way to make sure is to run microbenchmarks with an externally built libsleef and compare it with the one you build within the JDK. If there is no noticeable difference, then I guess it is fine.
Thanks for the clarification and good suggestion. I will verify it and update here later.
Just right now I have some trouble to get an aarch64 linux, I tried to get a graviton instance on AWS, but I failed to connect it when I create it. Previously I run all the test for correctness via qemu, but seems qemu is not for performance test. So I will update later when I get the environment ready.
If someone got the easy environment to verify the performance, it's very welcome. :)
-------------
PR Comment: https://git.openjdk.org/jdk/pull/18605#issuecomment-2039645463
More information about the build-dev
mailing list