Eclipse OpenJ9 Creation Review

Type: 
Creation
State: 
Successful
End Date of the Review Period: 

Reviews run for a minimum of one week. The outcome of the review is decided on this date. This is the last day to make comments or ask questions about this review.

Wednesday, August 16, 2017
Project: 
Proposal: 

Eclipse OpenJ9

Parent Project: 
Background: 

The open source Java community primarily operates at the OpenJDK and AdoptOpenJDK projects.

OpenJDK (http://openjdk.java.net/) is the place to collaborate on an open-source implementation of the Java Platform, Standard Edition (http://www.oracle.com/technetwork/java/javase/overview/index.html), and related projects.

IBM has developed an independent implementation of a Java Virtual Machine, codenamed "J9" which we want to bring to the open source community.

We want to open source this technology with a fully open governance model so that the entire Java community has the freedom to both use and contribute to this technology. IBM will continue its development activities for J9 directly in this open project and welcomes anyone else who wants to participate.
 

Scope: 

This project implements Java-specific semantics for the technology components provided at the Eclipse OMR project. This project can then be used as an extension to OpenJDK providing an alternative VM solution.

 

Description: 

OpenJ9 is a high performance, enterprise calibre, flexibly licensed, openly governed cross platform Java Virtual Machine extending and augmenting the runtime technology components from the Eclipse OMR project (www.eclipse.org/omr) and OpenJDK project (openjdk.java.net).

It is highly optimized for fast startup, low memory footprint, quick ramp-up, and excellent throughput performance, both in dedicated as well as cloud deployments.

We want to open source this technology with a fully open governance model so that the entire Java community has the freedom to both use and contribute to this technology. IBM will continue its development activities for J9 directly in this open project and welcomes anyone else who wants to participate.

This project will be a source code project in that it will not distribute its own binaries. The main reason for this is that fully-fledged Software Developer Kit for Java requires class libraries found at OpenJDK.

We would like to see binaries made available at AdoptOpenJDK. These binaries will also leverage tests and test infrastructure built at AdoptOpenJDK to become fully integrated with the rest of the Java community's activity around building OpenJDK and Java SE Platform technology.
 

Why Here?: 

There are two primary reasons Eclipse represents the best choice to open source the J9 JVM:
1) The core components of J9 are already present at the Eclipse foundation as part of the Eclipse OMR project
2) We want the project to be openly governed with flexible licensing terms.

Licenses:
Apache License, Version 2.0
Eclipse Public License 2.0

Since some refactoring work between Eclipse OMR and OpenJ9 will continue after the creation of this project, we need the ability to move code back and forth freely between these projects. Eclipse OMR is currently dual licensed under EPLv1 and AL2.

 

Initial Contribution: 

Our initial focus will be to open source the J9 virtual machine that IBM uses in its Java compliant products.

The initial set of committers will be from IBM due to their expertise with the code and because IBM will be moving their currently internal JVM development efforts directly to this project.  We welcome additional contributors and hope to expand the list of committers quickly.
 

Project Scheduling: 

Our current plan would be for the code contribution to be made no later than August 2017, so our hope is that the OpenJ9 project can reach the creation milestone ahead of that time.
 

Future Work: 

Our initial focus will be to open source the J9 virtual machine that IBM uses in its Java compliant products. Following that, our goal is to improve the quality and capabilities of the technology for its users.
 

People
Interested Parties: 

Many active participants at Eclipse OMR, OpenJDK and AdoptOpenJDK from Java builders, Java developers to JVM developers have expressed interest in this technology since our intention to open source J9 was announced at JavaOne in 2016.

Mentors: 
Donald Smith's picture

The project name is confusingly similar to OpenJDK given that Java SE 9 is about to be released.  Any combination of two of "Open", "J" and "9" would likely be OK, but using all three is simply going to confuse people.  I'd suggest "EclipseJ9" or something along those lines instead.