GraalVM - New JIT Compiler and Polyglot Runtime for the JVM

Graal is a new just-in-time compiler for the JVM focused on peak performance and multi-language support. Graal offers performance advantages not only to Java code, but also to scripting languages such as JavaScript, Ruby, Python, and R. Additionally, it enables the execution of native code on the JVM via an LLVM-based front end (project Sulong). Languages are executed by Graal via the Truffle framework, which comes with seamless interoperability and polyglot debugging and profiling functionality.

Usage

GraalVM is based on an Oracle Labs JDK 8 with JVMCI support. For a default download, the bin directory contains the following language execution binaries: java, js, node, lli, native-image. With the gu installer tool, additional languages can be installed, including ruby, python, and R.

Benefits

  • Performance - Graal incorporates our research on compiler technology, and offers better peak performance on some workloads than a traditional JVM.
  • Polyglot - Java, JavaScript, Ruby, Python, and R are all available at competitive performance within the same execution environment.
  • Interoperability - Languages executed in Graal can call each other without overhead and libraries from other languages can be used.
  • Embeddability - Embed dynamic languages and native code with sandboxing capabilities.
  • Tooling - Graal benefits from JVM-based tooling and all languages share common tooling such as debugging and profiling.


More information: Graalvm.org

For more information on GraalVM, including examples, useage scenarios, and a reference manual, visit GraalVM.org.