This section provides a quick introduction of Eclipse OpenJ9, which is an independent implementation of a JVM (Java Virtual Machine) developed by the Eclipse Foundation.
What Is Eclipse OpenJ9? -
Eclipse OpenJ9 is an independent implementation of a JVM (Java Virtual Machine) developed by
the Eclipse Foundation.
It was built using the JVM specification without using any code from any other JVM implementations.
The OpenJ9 JVM combines with the Java Class libraries from OpenJDK to create
a complete JDK tuned for footprint,
performance, and reliability that is well suited for cloud deployments.
The original source contribution to OpenJ9 came from the IBM "J9" JVM which
has been used in production by thousands of Java applications for the last two decades.
In September 2017, IBM completed open sourcing the J9 JVM as "Eclipse OpenJ9" at the Eclipse Foundation.
According to eclipse.org/openj9 Website,
using the combination of OpenJDK 8 and OpenJ9 demonstrates significantly better performance than
the combination of Oracle JDK and HotSpot as presented below:
66% smaller footprint after startup -
OpenJ9 is highly optimized for cloud workloads, where minimising memory footprint
is important. Even with other optimizations enabled, the footprint stays about the same.
63% smaller footprint during ramp up -
Memory footprint increases rapidly when load is applied, but at steady state,
OpenJDK 8 with OpenJ9 used around 63% less physical memory than OpenJDK 8 with HotSpot.
42% faster startup time -
Shared classes and Ahead-of-Time (AOT) technologies typically reduce startup time.
By using -Xquickstart mode as well, you can reduce startup time by up to 42%.
Comparable throughput -
Although both OpenJDK 8 with OpenJ9 and OpenJDK 8 with HotSpot reach a similar
peak throughput, OpenJDK 8 with OpenJ9 reaches that peak about 1 minute faster.
Faster ramp-up time in the cloud -
OpenJ9 reaches peak throughput on a single CPU core in 8.5 minutes compared
with 30 minutes for HotSpot. Doing more work more quickly is important for
short-lived VMs running in resource-constrained environments like the cloud.