RFR: 8344118: C2 SuperWord: add VectorThroughputForIterationCount benchmark
Emanuel Peter
epeter at openjdk.org
Tue Nov 19 11:51:54 UTC 2024
Took idea of benchmark from here https://github.com/openjdk/jdk/pull/14581
It will be important for the efforts in:
[JDK-8344085](https://bugs.openjdk.org/browse/JDK-8344085): C2 SuperWord: improve vectorization for small loop iteration count
I ran the plots for `byte, int, long`.
We have aligned/unaligned scenarios, and compute-bound vs memory-bound scenarios.
We can very clearly see the effect of vectorization, and that with increasing `size`, we get increasingly better performance. But we can also see the effect of pre/post loops: this creates the saw-tooth curve.
---------------------------------------------------
**Results**
red: normal -> saw-tooth
green: randomized offsets -> more "smooth"
linux_x64

linux_aarch64

macosx_x64

macosx_aarch64

windows_x64

-------------
Commit messages:
- whitespace
- Merge branch 'master' into JDK-8344118-VectorThroughputForIterationCount-benchmark
- Merge branch 'master' into JDK-8344118-VectorThroughputForIterationCount-benchmark
- Merge branch 'master' into JDK-8344118-VectorThroughputForIterationCount-benchmark
- Merge branch 'master' into JDK-8344118-VectorThroughputForIterationCount-benchmark
- JDK-8344118
Changes: https://git.openjdk.org/jdk/pull/22070/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=22070&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8344118
Stats: 436 lines in 1 file changed: 436 ins; 0 del; 0 mod
Patch: https://git.openjdk.org/jdk/pull/22070.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/22070/head:pull/22070
PR: https://git.openjdk.org/jdk/pull/22070
More information about the hotspot-compiler-dev
mailing list