Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> Java

Java 10: Experimentele Graal JIT-compiler ontgrendelen

JEP 317 – Experimentele Java-gebaseerde JIT-compiler

De traditionele JIT-compiler is in C++ geschreven en converteert Java-bytecode naar machinecode. Java 10 introduceert de optie om een experimentele Java-gebaseerde JIT-compiler, Graal, in te schakelen in plaats van de standaard JIT. Graal gebruikt de JVM Compiler Interface (JVMCI), geïntroduceerd in Java 9. Graal was al in Java 9 beschikbaar als alternatief; met Java 10 kan het eenvoudiger getest en gedebugd worden.

Syntaxis

java -XX:+UnlockExperimentalVMOptions -XX:+UseJVMCICompiler

De Graal-compiler is een complete herschrijving van de eerdere C++-compiler en gericht op Linux/x64-platforms. Graal is een plug-in voor de JVM en kan dynamisch geladen worden. Het ondersteunt ook polyglotte taalinterpretatie.

Risico's en aannames

Omdat Graal experimenteel is en onderhevig is aan testinspanningen (verschillende HotSpot- en JDK-tests met diverse vlagopties), kan het bij bepaalde benchmarks prestatieverlies vertonen ten opzichte van de standaard JIT Ahead-of-Time compilers.

Java

  1. Java-operators beheersen: typen, syntax en praktische voorbeelden
  2. Java-commentaar: typen, gebruik en best practices
  3. Java Enhanced For-lus beheersen: syntax, voorbeelden en best practices
  4. Java Strings beheersen: aanmaken, methodes en best practices
  5. Java interfaces meesteren: concepten, implementatie en best practices
  6. Java anonieme inner classes meesteren: definitie, syntax en praktische voorbeelden
  7. Java Try-with-resources meesteren: automatische resource management uitgelegd
  8. Java Annotaties uitgelegd: typen, plaatsing en praktische voorbeelden
  9. Java Assertions: een praktische gids voor bugdetectie en codebetrouwbaarheid
  10. Java Vector begrijpen: Gebruik, Kenmerken en Vergelijking met ArrayList
  11. Java 10: Experimentele Graal JIT-compiler ontgrendelen