THE MULTI-LAYER SHARED CLASS CACHE FOR DOCKER

With contributions from Hang Shao. By now you’ve no doubt heard of Eclipse OpenJ9 and its reputation for starting applications faster and using less memory. If not, you should visit the Eclipse OpenJ9 Performance page. The Shared Class Cache (SCC) capability is one of the main reasons why OpenJ9 can start faster and use less…

Comparing Jenkins startup in Docker

Containers are increasingly becoming the preferred way of deploying applications. They facilitate consistency between development and operations, allow for an easy way to build layers for reuse, and make it very easy for users to try out an application without having to deal with setting up all the prerequisites. However, just because applications have moved…

Ahead Of Time Compilation: Validation

This post finally gets to the much alluded to topic of Validation. As mentioned in a previous post, Validation is one of the two actions the JVM must perform to generate and execute AOT code; the other is Relocation, which is described here. What is Validation? In the context of AOT, Validation is the process of…

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?…

Intro to Ahead Of Time Compilation

This post is meant to serve as an introduction to Ahead Of Time (AOT) compilation in OpenJ9. It does not delve too deeply into the technical details and subtleties involved in implementing AOT compilations; these will be covered in future blog posts. In this post, AOT can refer to either the AOT Compilation or the…