[vectorIntrinsics] RFR: 8244490: [vector] Move Vector API micro benchmarks under test/micro
Marcus G K Williams
mgkwill at openjdk.java.net
Thu May 6 18:05:00 UTC 2021
On Thu, 6 May 2021 17:54:37 GMT, Paul Sandoz <psandoz at openjdk.org> wrote:
> I looked more in detail, there are some immediate issues, and i think an architectural issue with the split.
>
Thanks for the taking a look @PaulSandoz.
> The more immediate issues are:
>
> 1. Some benchmark tests fail to build via `make`. Some are related to bad ASCII characters in comments, some due to compiler warnings, and others due to external dependencies in the `pom.xml` (namely `org.junit.jupiter:junit-jupiter-api`). I think all those are fixable. (See https://openjdk.java.net/groups/build/doc/testing.html for configuring, compiling, and executing JMH tests.)
Noted. I'll take a look and fix.
> 2. The structure under `test/micro` is misleading, and does not follow directory to package name convention. This is also fixable. I think we need to remove the maven project and merge in under `test/micro/org/openjdk/bench/jdk/incubator/vector`. We remove the maven project and place the non-generated benchmark files directly under the aforementioned directory (and fix the ones that fail to compile). Generated benchmarks could be placed under, say, `operation`.
>
+1
> Initially I thought it was fine that generation scripts were split between unit tests and performance tests, but architecturally, i now think it better to keep one set of bash scripts for generated code, maintained under the `vector` module. These are complex and splitting will cause divergence. These scripts can generate the `operation` performance tests under the `test/micro` directory at the appropriate location.
Agreed. I was a bit worried about maintenance and divergence also. I'll revert that portion and instead generate under `test/micro` ... `operation`.
Updated patch coming in a few days.
-------------
PR: https://git.openjdk.java.net/panama-vector/pull/77
More information about the panama-dev
mailing list