The blog post Eclipse OpenJ9 performance; a bake-off on Windows mentions the Class Data Sharing (CDS) adapter required to enable OpenJ9 shared classes support for the OSGi Equinox framework. Since Eclipse Equinox 4.9 2018-09, the CDS adapter is included with Equinox builds. When running with an Eclipse OpenJ9 JVM, to enable shared classes support for the…
Month: October 2018
Shared classes cache now supports fat jar
Recently OpenJ9 extended the class sharing feature to include fat jars (issue here). Starting from v0.9.0, applications running with fat jar, like Spring Boot, will now also benefit from the faster start-up time and reduced memory footprint from the class sharing feature of Eclipse OpenJ9. OpenJ9 class sharing The class sharing feature of Eclipse Openj9…
Introducing option builder tools for -Xdump and -Xtrace
OpenJ9 provides some powerful command line options for troubleshooting problems with Java applications at runtime. – The -Xdump option is used to control the use of dump agents, which produce dump files such as Java dumps, heap dumps, and system (core) dumps. – The -Xtrace option can be used to trace Java applications, methods, and…
Ahead Of Time Compilation: Relocation
This post describes Relocation; as mentioned in the previous post, it is one of the two actions the JVM must perform to generate and execute AOT code. Because Validations are a bit more involved, we first focus on the task of relocating code before delving into the complexities and subtleties of validations. What is Relocation?…
Inspecting OpenJ9 performance with perf on Linux
Performance is critical to software. Software must perform better than its competitors to gain a competitive edge and acquire a greater market share. Improving performance and resolving performance regression issues for large software systems can be challenging and time consuming. Profiling tools such as Linux perf can help substantially reduce the time to evaluate and…