Java 10 - JIT-Compiler
JEP 317 − Experimenteller Java-basierter JIT-Compiler
Der JIT-Compiler ist in C++ geschrieben und wird verwendet, um Java in Bytecode umzuwandeln. Jetzt hat Java 10 die Möglichkeit, einen experimentellen Java-basierten JIT-Compiler, Graal, zu aktivieren, der anstelle des Standard-JIT-Compilers verwendet werden kann. Graal verwendet JVMCI, JVM Compiler Interface, das in Java 9 eingeführt wurde. Graal ist auch in Java 9 verfügbar. Mit Java 10 können wir Graal in die Lage versetzen, den experimentellen JVM-Compiler zu testen und zu debuggen.
Syntax
java -XX:+UnlockExperimentalVMOptions -XX:+UseJVMCICompiler
Der Graal-Compiler ist eine vollständige Neufassung des C++-basierten früheren Compilers und zielt auf Linux/x64-basierte Plattformen ab. Graal wurde in Java 9 als Alternative zum derzeit verwendeten JIT-Compiler eingeführt. Graal ist ein Plug-in für JVM und kann dynamisch hinzugefügt werden. Es unterstützt auch die Interpretation mehrsprachiger Sprachen.
Risiken und Annahmen
Da Graal experimentell ist und unter Berücksichtigung verschiedener Hotspots und jdk-Tests mit verschiedenen Flag-Optionen getestet wird. Im Vergleich zu Standard-JIT-Ahead-of-Time-Compilern kann er einige Benchmarks für die Leistung nicht bestehen.
Java