On Wed, 3 Jun 2026 08:12:32 GMT, Fei Gao <[email protected]> wrote: > @fg1417 Nice progress, I had some responses and new comments above. Main new > idea: what about Vector API vectors that create these patterns, do they also > get optimized by your changes now?
Hi @eme64, thanks for your patience. I’ve pushed the Vector API microbenchmarks in `test/micro/org/openjdk/bench/jdk/incubator/vector/LongVectorReduction.java` that mirror the auto-vectorization patterns, along with the corresponding IR test cases. The change also benefits these Vector API microbenchmarks. On an `Arm Neoverse V2` platform, I observed the following results: Benchmark (size) Mode Cnt Units uplift LongVectorReduction.addBig 512 thrpt 5 ops/ms 2.97% LongVectorReduction.addBig 2048 thrpt 5 ops/ms 0.37% LongVectorReduction.addDotProduct 512 thrpt 5 ops/ms 50.99% LongVectorReduction.addDotProduct 2048 thrpt 5 ops/ms 49.95% LongVectorReduction.addDotProductShared 512 thrpt 5 ops/ms 0.29% LongVectorReduction.addDotProductShared 2048 thrpt 5 ops/ms -0.01% LongVectorReduction.ifElsePhiAdd 512 thrpt 5 ops/ms 8.50% LongVectorReduction.ifElsePhiAdd 2048 thrpt 5 ops/ms 16.04% LongVectorReduction.ifElsePhiSub 512 thrpt 5 ops/ms 10.55% LongVectorReduction.ifElsePhiSub 2048 thrpt 5 ops/ms 11.78% LongVectorReduction.subDotProduct 512 thrpt 5 ops/ms 50.74% LongVectorReduction.subDotProduct 2048 thrpt 5 ops/ms 50.49% Thanks! ------------- PR Comment: https://git.openjdk.org/jdk/pull/30237#issuecomment-4646663085
