Java 虚拟机 OpenJ9 和 Hotspot 的 Benchmark 测试

简介:

IBM 开源了它开发的 J9 Java 虚拟机 (JVM),并将其贡献给了 Eclipse 基金会,重命名为 Eclipse OpenJ9。J9 是一个高性能可伸缩的 Java 虚拟机,是许多 IBM 企业级软件产品的核心,OpenJ9 可作为 Hotspot 的替代者用于 OpenJDK,比如需要高性能的企业级运行时环境。

那么,这个 Eclipse OpenJ9 Java 虚拟机的性能到底如何?日前,有开发者运行了一些快速的 Benchmark 测试来和 Java 虚拟机 Hotspot 进行比较,以了解其性能。

测试者在两台 Linux 设备上进行测试,他将 OpenJ9 与 OpenJDK 9 打包在一起,将其性能与现有的 OpenJDK 9 Hotspot 构建版本进行比较。另外,还有一个参考的标准是 OpenJDK 8 Hotspot 的构建版本。这三个构建文件都是从它们的预构建二进制包页面获得的。

用于本次快速 Benchmark 测试的系统之一是基于 Intel Core i9 7900X,采用 Linux Kernel 4.13,运行 Ubuntu 17.04 的系统。

而另一个系统是使用有 Xeon Gold 6138 处理器并运行 Debian GNU/Linux 9.1 的双插槽 Tyan 服务器。

分别在两个系统上,测试了三个 OpenJDK 版本,并通过 Phoronix 测试套件运行了一些可用的 Java Benchmark 测试。

先来看看在 Core i9 7900X 上,本次 Hotspot/OpenJ9 测试的结果:

首先是使用 j2dbench 进行一些图形方面的基准测试。使用 OpenJ9 时,文本渲染速度明显较慢,而 Hotspot 在其他两次测试中表现相似。在 OpenJDK 8 和 9 之间也不是有很大的区别。J2dbench 是 Sun Microsystems 为 Phoronix 测试套件贡献的 Java 图形基准测试工具之一。

使用 Java 版的 SciMark2 进行一些数学运算基准测试

可以看到,至少到目前为止,OpenJ9 的性能大部分是落后于 Hotspot 的。

基于 Java 的 Bork 文件加密工具测试,可以看到 Hotspot 依然更快

JMH 测试中,它们之间的表现不相上下

Sunflow 基准测试中,Hotspot 依然更快

来自另一个系统的 Hotspot/OpenJ9 Benchmark 测试结果与 Core i9 测试的大致相似:

作为一个开源的 JVM 项目,OpenJ9 还处于初期阶段,应该在几个月后再运行一次测试,看看性能比较如何,请保持关注。


本文作者:佚名

来源:51CTO

相关文章
|
1月前
|
Java
【Java每日一题】— —第二十一题:编程把现实生活的手机事物映射成一个标准类Phone,并定义一个测试类PhoneDemo测试Phone类的功能
【Java每日一题】— —第二十一题:编程把现实生活的手机事物映射成一个标准类Phone,并定义一个测试类PhoneDemo测试Phone类的功能
35 0
|
1月前
|
存储 Java 数据安全/隐私保护
【JVM】Java虚拟机栈(Java Virtual Machine Stacks)
【JVM】Java虚拟机栈(Java Virtual Machine Stacks)
35 0
|
30天前
|
Java 计算机视觉
java实现人脸识别源码【含测试效果图】——前台页面层(login.jsp)
java实现人脸识别源码【含测试效果图】——前台页面层(login.jsp)
12 0
|
11天前
|
Java 测试技术
SpringBoot整合单元测试&&关于SpringBoot单元测试找不到Mapper和Service报java.lang.NullPointerException的错误
SpringBoot整合单元测试&&关于SpringBoot单元测试找不到Mapper和Service报java.lang.NullPointerException的错误
16 0
|
21天前
|
缓存 Java C#
【JVM故障问题排查心得】「Java技术体系方向」Java虚拟机内存优化之虚拟机参数调优原理介绍(一)
【JVM故障问题排查心得】「Java技术体系方向」Java虚拟机内存优化之虚拟机参数调优原理介绍
60 0
|
30天前
|
Java
使用java底层实现邮件的发送(含测试,源码)
使用java底层实现邮件的发送(含测试,源码)
9 0
|
30天前
|
Java 数据库连接 mybatis
mybatis简单案例源码详细【注释全面】——测试层(UserMapperTest.java)
mybatis简单案例源码详细【注释全面】——测试层(UserMapperTest.java)
9 0
|
30天前
|
Java 计算机视觉
java实现人脸识别源码【含测试效果图】——前台显示层(index.jsp)
java实现人脸识别源码【含测试效果图】——前台显示层(index.jsp)
15 1
|
30天前
|
Java 计算机视觉
java实现人脸识别源码【含测试效果图】——Servlet层(FaceServlet)
java实现人脸识别源码【含测试效果图】——Servlet层(FaceServlet)
10 1
|
30天前
|
Java 计算机视觉
java实现人脸识别源码【含测试效果图】——ServiceImpl层(UserServiceImpl)
java实现人脸识别源码【含测试效果图】——ServiceImpl层(UserServiceImpl)
19 1