Oracle championing cause for Graal to be part of OpenJDK
The push for a multi-JVM dynamic Java compiler is apparently on!
Excitement is brewing in the world of OpenJDK as fledging Java
compiler project, Graal is receiving plaudits from all sides,
including Oracle reps.
The goal for this new project seems set, as the lead for the
open-source Maxine JVM
project, Douglas Simon outlines within the
OpenJDK discussion. The Graal project is ‘to design a dynamic
compiler in Java that produces excellent code quality without
compromising compile time and memory usage by the JVM’, using the
Graal compiler from the Maxine code base as a starting point.
The Oracle labs VM research team are investigating the
possibility of implementing the compiler with both meta-circular
JVMs (Maxine) and with native JVMs like Hotspot. Getting it into
OpenJDK would certainly give it the perfect opportunity to help
form Oracle’s vision for the next-generation Java
- better performance, more scalability, and
support for all the latest languages within an all-encompassing
JVM. That’s the theory anyway.
Meta-circular means it would
be implemented in Java and Java code runs on itself
without requiring an additional virtual
machine. Principal architect at Apollo
Group and Java specialist, Hari Gottipati told more
of the possibilities for Graal. He said:
Traditionally JVMs are written in C or C++.
Java implementation enables seamless integration between
a virtual machine and application resources such as objects and
threads.Think about coding in Java, compiling it using a compiler
written in Java, and running it in a JVM, which is again written in
Java – it’s Java all the way and imagine the seamless integration
between an application and a VM.
Oracle already seems committed to integrating the newest JVMs
into the latest versions of the language, with work already
underway to merge JRocket into the Hotspot JVM in time for JDK 8 in
2013. It’s good to see that OpenJDK is always open to innovation
and, by initiating the Graal project, we could well see the next
generation of the JVM.