GraalVM поддерживает SIMD / AutoVectorization вообще или так же, как jdk9+?
В JDK 9 было несколько существенных улучшений производительности для SIMD / AutoVectorization, что привело к улучшению от 2 до 4 раз во многих случаях. Имеет ли Graal VM те же улучшения, что и в jdk9 для поддержки SIMD / Autovectorization? (На самом деле, поддерживает ли он SIMD / Autovectorization даже на уровне jdk8?)
Другими словами, означает ли тот факт, что Graal VM в конечном итоге будет поддерживать jdk11 (согласно этому сообщению: https://github.com/oracle/graal/issues/651), означает, что он будет автоматически поддерживать SIMD / Autovectorization (и делать это при хотя бы как jdk 11?)
1 ответ
GraalVM EE выполняет некоторую автоматическую векторизацию, она довольно сильно отличается от автоматической векторизации C2, поэтому может случиться так, что некоторые случаи, охватываемые одним, не покрываются другим, и наоборот.
C2 - это JIT-компилятор HotSpot, который заменен на Graal-компилятор в GraalVM. В результате GraalVM, основанный на JDK9+, ничего не изменит в возможности автоматической векторизации GraalVM, поскольку упомянутые вами изменения для JDK9 были сделаны в C2.