Site icon Eclipse OpenJ9 Blog

Tomcat-Tradelite7 Performance of OpenJ9 with default Shared Cache

Tomcat is a very popular and widely used application server. In this article I will show how Tomcat users can get some good performance boosts by using the Eclipse OpenJ9 JVM.

In different articles, we observed that OpenJDK8-OpenJ9 performed better with Startup and Footprint compared to OpenJDK8-HotSpot. Now with Shared Cache enabled by default with OpenJ9 , let’s do some experiments on how that would impact OpenJ9 by measuring the performance of Apache-Tomcat with the Tradelite7 application. 

Tradelite is a version of DayTrader benchmark and a good measure of the real-world workloads. Tradelite is a Java EE web application that uses servlets, JavaServer Pages (JSP), and JDBC. Unlike DayTrader, Tradelite does not use Enterprise JavaBeans (EJB) or the Java Message Service (JMS) application programming interface (API). For people looking for certain types of performance improvements, these findings are very telling.

To start with, 

* Tradelite7 is not available externally but an early version of Tradelite8 is (if you want to try).

To calculate the Startup time and Footprint, below methods are used:

Below are the different configurations I tried for Tomcat-Tradelite7 Startup/Footprint and JVM Options used for the same:

Below are the results of Startup and Footprint from my experiments:

Normalized Startup — Footprint

OpenJ9 with defaultSCC shows improved Startup Performance by almost 20% compared to noSCC. With explicit SCC, it has improved by ~40% compared to noSCC.

With the same benchmark, I did more experiments to find how the Throughput is affected, and from the results, it is observed that Throughput with defaultSCC is almost similar to HotSpot.

Normalized Throughput — Footprint

Above graphs Y-axis uses normalized data since it’s the relative picture that matters.

All Above experiments are done on a machine with following config

Summary:

From the data we got, we can confirm that,

Exit mobile version