OpenJDK vs OracleJVM: a look at Java performance under RedHat 6.3 with SPECjvm2008

Written by Gionatan Danti on . Posted in Linux & Unix

User Rating:  / 16

"Write once, run anywhere" is the "holy grail" and hidden dream of any developer that has to support multiple platforms and operating systems.

While many programming languages and associated virtual machines attempt to solve this problem, Java + JVM is one of the best know (and best performing) multi-platform software stack. It evolved from a sub-performing, very slow interpreter-based solution to a fast JIT-based, reliable and secure system.

As other multi-platform languages, Java first compile itself in an intermediate state know as "bytecode". This bytecode is then executed by the real machine compiler, the Java Virtual Machine (JVM in short). So, it become clear that a good JVM is crucial to obtain high performances from your Java code.

Many JVMs exist in the Linux world, each with their strong and weak points. However, the most common "generic" JVMs are the OpenJDK implementation and Sun/Oracle one. While in the past the OpenJDK implementation has some troubles into keeping pace with Sun (now Oracle) short update cycle, now the two are basically tied on a core feature terms. To tell the truth, as in late 2006 Sun decided to open-source its JVM software, current 1.7 Open/Oracle implementations are near-identical each other. [1]

However, near-identical don't necessarily means absolutely equals. So, which is the faster JVM implementation? While the correct answer is a complex one, we are going to have a look at their relative performance under the industry-standard SPECjvm2008 benchmark.

You have no rights to post comments