I'm looking for AVX/AVX2 support in Java 11+ project. I found some Java 8 materials, but most of them is outdated. I'm know, it is possible to use AVX via JNI, but I'm wonder if it is possible to get rid (or minimize) of JNI overhead. I want to optimise some operations on matrices. I would like to perform the operations that will be executed without leaving this decision to the JIT.
I think about something like a manual AVX support, based on annotations or unsafe/incubator classes, which would be be provided by JVM implementation.
I found Project Panama, but there is very little information about this project.
Do you have any experiences or thoughts on this topic. Are there any other options?
Notes:
- It is possible to use AVX by JNI: https://stackoverflow.com/a/10809123/12292000
- Project Panama website: https://openjdk.java.net/projects/panama/