Java Performance OpenJDK 14 vs. GraalVM 20 vs. Amazon Corretto
OpenJDK 8 to OpenJDK 14 plus GraalVM 20 vs. Amazon Corretto JVM benchmarks by Michael Larabel for a future article.
OpenJDK 8
Processor Notes: Scaling Governor: acpi-cpufreq performance - CPU Microcode: 0x8701013
Java Notes: OpenJDK Runtime Environment (build 1.8.0_41-b04)
Security Notes: itlb_multihit: Not affected + l1tf: Not affected + mds: Not affected + meltdown: Not affected + spec_store_bypass: Mitigation of SSB disabled via prctl and seccomp + spectre_v1: Mitigation of usercopy/swapgs barriers and __user pointer sanitization + spectre_v2: Mitigation of Full AMD retpoline IBPB: conditional STIBP: conditional RSB filling + tsx_async_abort: Not affected
OpenJDK 11
Processor Notes: Scaling Governor: acpi-cpufreq performance - CPU Microcode: 0x8701013
Java Notes: OpenJDK Runtime Environment 18.9 (build 11+28)
Security Notes: itlb_multihit: Not affected + l1tf: Not affected + mds: Not affected + meltdown: Not affected + spec_store_bypass: Mitigation of SSB disabled via prctl and seccomp + spectre_v1: Mitigation of usercopy/swapgs barriers and __user pointer sanitization + spectre_v2: Mitigation of Full AMD retpoline IBPB: conditional STIBP: conditional RSB filling + tsx_async_abort: Not affected
OpenJDK 14
Processor Notes: Scaling Governor: acpi-cpufreq performance - CPU Microcode: 0x8701013
Java Notes: OpenJDK Runtime Environment (build 14+36-1461)
Security Notes: itlb_multihit: Not affected + l1tf: Not affected + mds: Not affected + meltdown: Not affected + spec_store_bypass: Mitigation of SSB disabled via prctl and seccomp + spectre_v1: Mitigation of usercopy/swapgs barriers and __user pointer sanitization + spectre_v2: Mitigation of Full AMD retpoline IBPB: conditional STIBP: conditional RSB filling + tsx_async_abort: Not affected
GraalVM 20.0 Java 8
Processor Notes: Scaling Governor: acpi-cpufreq performance - CPU Microcode: 0x8701013
Java Notes: OpenJDK Runtime Environment (build 1.8.0_242-b06)
Security Notes: itlb_multihit: Not affected + l1tf: Not affected + mds: Not affected + meltdown: Not affected + spec_store_bypass: Mitigation of SSB disabled via prctl and seccomp + spectre_v1: Mitigation of usercopy/swapgs barriers and __user pointer sanitization + spectre_v2: Mitigation of Full AMD retpoline IBPB: conditional STIBP: conditional RSB filling + tsx_async_abort: Not affected
GraalVM 20.0 Java 11
Processor Notes: Scaling Governor: acpi-cpufreq performance - CPU Microcode: 0x8701013
Java Notes: OpenJDK Runtime Environment GraalVM CE 20.0.0 (build 11.0.6+9-jvmci-20.0-b02)
Security Notes: itlb_multihit: Not affected + l1tf: Not affected + mds: Not affected + meltdown: Not affected + spec_store_bypass: Mitigation of SSB disabled via prctl and seccomp + spectre_v1: Mitigation of usercopy/swapgs barriers and __user pointer sanitization + spectre_v2: Mitigation of Full AMD retpoline IBPB: conditional STIBP: conditional RSB filling + tsx_async_abort: Not affected
Corretto 8.242.08
Processor Notes: Scaling Governor: acpi-cpufreq performance - CPU Microcode: 0x8701013
Java Notes: OpenJDK Runtime Environment Corretto-8.242.08.1 (build 1.8.0_242-b08)
Security Notes: itlb_multihit: Not affected + l1tf: Not affected + mds: Not affected + meltdown: Not affected + spec_store_bypass: Mitigation of SSB disabled via prctl and seccomp + spectre_v1: Mitigation of usercopy/swapgs barriers and __user pointer sanitization + spectre_v2: Mitigation of Full AMD retpoline IBPB: conditional STIBP: conditional RSB filling + tsx_async_abort: Not affected
Corretto 11.0.6.10
Processor: AMD Ryzen 9 3950X 16-Core @ 3.50GHz (16 Cores / 32 Threads), Motherboard: ASUS ROG CROSSHAIR VIII HERO (WI-FI) (1201 BIOS), Chipset: AMD Starship/Matisse, Memory: 16GB, Disk: 2000GB Force MP600 + 2000GB SABRENT, Graphics: AMD Navi 10 8GB (2060/875MHz), Audio: AMD Navi 10 HDMI Audio, Monitor: DELL P2415Q, Network: Realtek Device 8125 + Intel I211 + Intel Device 2723
OS: Ubuntu 19.10, Kernel: 5.6.0-999-generic (x86_64) 20200313, Desktop: GNOME Shell 3.34.1, Display Server: X Server 1.20.7, OpenGL: 4.6 Mesa 20.1.0-devel (git-b93a195 2020-03-14 eoan-oibaf-ppa) (LLVM 9.0.0), Vulkan: 1.1.129, Compiler: GCC 9.2.1 20191008, File-System: ext4, Screen Resolution: 3840x2160
Processor Notes: Scaling Governor: acpi-cpufreq performance - CPU Microcode: 0x8701013
Java Notes: OpenJDK Runtime Environment Corretto-11.0.6.10.1 (build 11.0.6+10-LTS)
Security Notes: itlb_multihit: Not affected + l1tf: Not affected + mds: Not affected + meltdown: Not affected + spec_store_bypass: Mitigation of SSB disabled via prctl and seccomp + spectre_v1: Mitigation of usercopy/swapgs barriers and __user pointer sanitization + spectre_v2: Mitigation of Full AMD retpoline IBPB: conditional STIBP: conditional RSB filling + tsx_async_abort: Not affected
Java 2D Microbenchmark
This test runs a series of microbenchmarks to check the performance of the OpenGL-based Java 2D pipeline and the underlying OpenGL drivers. Learn more via the OpenBenchmarking.org test page.
Java SciMark
This test runs the Java version of SciMark 2.0, which is a benchmark for scientific and numerical computing developed by programmers at the National Institute of Standards and Technology. This benchmark is made up of Fast Foruier Transform, Jacobi Successive Over-relaxation, Monte Carlo, Sparse Matrix Multiply, and dense LU matrix factorization benchmarks. Learn more via the OpenBenchmarking.org test page.
Bork File Encrypter
Bork is a small, cross-platform file encryption utility. It is written in Java and designed to be included along with the files it encrypts for long-term storage. This test measures the amount of time it takes to encrypt a sample file. Learn more via the OpenBenchmarking.org test page.
DaCapo Benchmark
This test runs the DaCapo Benchmarks written in Java and intended to test system/CPU performance. Learn more via the OpenBenchmarking.org test page.
Renaissance
Renaissance is a suite of benchmarks designed to test the Java JVM from Apache Spark to a Twitter-like service to Scala and other features. Learn more via the OpenBenchmarking.org test page.
Apache HBase
This is a benchmark of the Apache HBase non-relational distributed database system inspired from Google's Bigtable. Learn more via the OpenBenchmarking.org test page.
SPECjbb 2015
This is a benchmark of SPECjbb 2015. For this test profile to work, you must have a valid license/copy of the SPECjbb 2015 ISO (SPECjbb2015-1.02.iso) in your Phoronix Test Suite download cache. Learn more via the OpenBenchmarking.org test page.
OpenJDK 8
Processor Notes: Scaling Governor: acpi-cpufreq performance - CPU Microcode: 0x8701013
Java Notes: OpenJDK Runtime Environment (build 1.8.0_41-b04)
Security Notes: itlb_multihit: Not affected + l1tf: Not affected + mds: Not affected + meltdown: Not affected + spec_store_bypass: Mitigation of SSB disabled via prctl and seccomp + spectre_v1: Mitigation of usercopy/swapgs barriers and __user pointer sanitization + spectre_v2: Mitigation of Full AMD retpoline IBPB: conditional STIBP: conditional RSB filling + tsx_async_abort: Not affected
Testing initiated at 18 March 2020 08:10 by user pts.
OpenJDK 11
Processor Notes: Scaling Governor: acpi-cpufreq performance - CPU Microcode: 0x8701013
Java Notes: OpenJDK Runtime Environment 18.9 (build 11+28)
Security Notes: itlb_multihit: Not affected + l1tf: Not affected + mds: Not affected + meltdown: Not affected + spec_store_bypass: Mitigation of SSB disabled via prctl and seccomp + spectre_v1: Mitigation of usercopy/swapgs barriers and __user pointer sanitization + spectre_v2: Mitigation of Full AMD retpoline IBPB: conditional STIBP: conditional RSB filling + tsx_async_abort: Not affected
Testing initiated at 19 March 2020 06:01 by user pts.
OpenJDK 14
Processor Notes: Scaling Governor: acpi-cpufreq performance - CPU Microcode: 0x8701013
Java Notes: OpenJDK Runtime Environment (build 14+36-1461)
Security Notes: itlb_multihit: Not affected + l1tf: Not affected + mds: Not affected + meltdown: Not affected + spec_store_bypass: Mitigation of SSB disabled via prctl and seccomp + spectre_v1: Mitigation of usercopy/swapgs barriers and __user pointer sanitization + spectre_v2: Mitigation of Full AMD retpoline IBPB: conditional STIBP: conditional RSB filling + tsx_async_abort: Not affected
Testing initiated at 19 March 2020 20:40 by user pts.
GraalVM 20.0 Java 8
Processor Notes: Scaling Governor: acpi-cpufreq performance - CPU Microcode: 0x8701013
Java Notes: OpenJDK Runtime Environment (build 1.8.0_242-b06)
Security Notes: itlb_multihit: Not affected + l1tf: Not affected + mds: Not affected + meltdown: Not affected + spec_store_bypass: Mitigation of SSB disabled via prctl and seccomp + spectre_v1: Mitigation of usercopy/swapgs barriers and __user pointer sanitization + spectre_v2: Mitigation of Full AMD retpoline IBPB: conditional STIBP: conditional RSB filling + tsx_async_abort: Not affected
Testing initiated at 20 March 2020 08:52 by user pts.
GraalVM 20.0 Java 11
Processor Notes: Scaling Governor: acpi-cpufreq performance - CPU Microcode: 0x8701013
Java Notes: OpenJDK Runtime Environment GraalVM CE 20.0.0 (build 11.0.6+9-jvmci-20.0-b02)
Security Notes: itlb_multihit: Not affected + l1tf: Not affected + mds: Not affected + meltdown: Not affected + spec_store_bypass: Mitigation of SSB disabled via prctl and seccomp + spectre_v1: Mitigation of usercopy/swapgs barriers and __user pointer sanitization + spectre_v2: Mitigation of Full AMD retpoline IBPB: conditional STIBP: conditional RSB filling + tsx_async_abort: Not affected
Testing initiated at 20 March 2020 12:54 by user pts.
Corretto 8.242.08
Processor Notes: Scaling Governor: acpi-cpufreq performance - CPU Microcode: 0x8701013
Java Notes: OpenJDK Runtime Environment Corretto-8.242.08.1 (build 1.8.0_242-b08)
Security Notes: itlb_multihit: Not affected + l1tf: Not affected + mds: Not affected + meltdown: Not affected + spec_store_bypass: Mitigation of SSB disabled via prctl and seccomp + spectre_v1: Mitigation of usercopy/swapgs barriers and __user pointer sanitization + spectre_v2: Mitigation of Full AMD retpoline IBPB: conditional STIBP: conditional RSB filling + tsx_async_abort: Not affected
Testing initiated at 20 March 2020 17:06 by user pts.
Corretto 11.0.6.10
Processor: AMD Ryzen 9 3950X 16-Core @ 3.50GHz (16 Cores / 32 Threads), Motherboard: ASUS ROG CROSSHAIR VIII HERO (WI-FI) (1201 BIOS), Chipset: AMD Starship/Matisse, Memory: 16GB, Disk: 2000GB Force MP600 + 2000GB SABRENT, Graphics: AMD Navi 10 8GB (2060/875MHz), Audio: AMD Navi 10 HDMI Audio, Monitor: DELL P2415Q, Network: Realtek Device 8125 + Intel I211 + Intel Device 2723
OS: Ubuntu 19.10, Kernel: 5.6.0-999-generic (x86_64) 20200313, Desktop: GNOME Shell 3.34.1, Display Server: X Server 1.20.7, OpenGL: 4.6 Mesa 20.1.0-devel (git-b93a195 2020-03-14 eoan-oibaf-ppa) (LLVM 9.0.0), Vulkan: 1.1.129, Compiler: GCC 9.2.1 20191008, File-System: ext4, Screen Resolution: 3840x2160
Processor Notes: Scaling Governor: acpi-cpufreq performance - CPU Microcode: 0x8701013
Java Notes: OpenJDK Runtime Environment Corretto-11.0.6.10.1 (build 11.0.6+10-LTS)
Security Notes: itlb_multihit: Not affected + l1tf: Not affected + mds: Not affected + meltdown: Not affected + spec_store_bypass: Mitigation of SSB disabled via prctl and seccomp + spectre_v1: Mitigation of usercopy/swapgs barriers and __user pointer sanitization + spectre_v2: Mitigation of Full AMD retpoline IBPB: conditional STIBP: conditional RSB filling + tsx_async_abort: Not affected
Testing initiated at 20 March 2020 21:02 by user pts.