阿里云「飞天发布时刻」2024来啦!新产品、新特性、新能力、新方案,等你来探~ 了解详情
写点什么

Renaissance:比较 JVM 性能的新基准

  • 2019-06-18
  • 本文字数:1285 字

    阅读完需:约 4 分钟

Renaissance:比较 JVM 性能的新基准

Charles 大学、Oracle 实验室和其他几所大学的研究人员发布了Renaissance,它是一个用于 Java 虚拟机性能测试的新基准。这个基准让 JVM 开发人员能够测量不同 JVM 发行版之间的性能,从而更好地理解应用程序在特定的 JVM 上有怎样的表现。


Renaissance 旨在对 Java 8(2014)到 Java 12(2019)这些版本之间发布的并发特性进行更多的测试。这些测试在诸如 DaCapo 和 SpecJVM2008 等基准使用过的一些测试基础上进行了扩展。总共有 21 个面向并行和并发的基准测试,覆盖了 Java 和 Scala 代码。另一个热门的 JVM 基准测试是 SPECJB2015,IBM使用它来演示硬件更改对Java性能的影响


Renaissance 白皮书的 12 位作者中,有 5 位与 Oracle 实验室合作开发 GraalVM。GraalVM是一种新的多语种虚拟机,可以在一个运行时中运行包括 Java 在内的多种软件语言。GraalVM 有社区版和商业企业版两个版本。每个版本都有两种模式:热点模式和本机镜像。热点模式是在OpenJDK的HotSpot实现之后命名的,且通过 Java 测试兼容性工具包(JCK)的测试,完全兼容 OpenJDK。GRAALVM 的另一种模式(本机镜像)将 Java 应用程序编译成本机机器码,由于一系列原因,它并不完全遵循Java SE的兼容性定义,但它可以运行符合其假设的应用程序。


来自 Excelsior 的高级软件工程师 Nikita Lipsky 对Sun Microsystems在2004 年定义的本机镜像兼容性问题提出了质疑:“其中有一条规则要求产品的‘所有配置’都具备兼容性。我们不能使用特殊的配置来通过测试,然后鼓励客户使用其他实际上不兼容的配置。是的,那个把戏有人试过一次。”


InfoQ 与 Oracle 进行了沟通,确认了在 Renaissance 基准中发布的数字是在兼容 HotSpot 模式下生成的,因此可以用它们来与其他 JVM 进行比较。


总体而言,Graalvm 社区版的性能与 OpenJDK 相当,而 Graalvm 企业版得分更好。在下面的图表中,得分越高越好。



Renaissance 的发布引起了与其他 Java 实现的混淆,因为他们没有参与,也不知道基准可以测量什么东西。与 SPEC(SPEC 提供了一个公平的基准线,在这个平台上,竞争厂商达成了一致)不同,GraalVM 独自参与了 Renaissance。尽管 12 位作者中有 7 位来自不同的大学,但竞争形势并不存在。研究 Shenandoah 垃圾收集器的 Red Hat 性能专家Aleksey Shipilev说 :“基准游戏是关于可信度,而供应商基准则充满了利益冲突。新的基准套件也如此,而与经过特别优化的供应商产品成果一起出现的新的基准套件就更是如此。”


Azul CTO Gil Tene 解释说:“创建‘新基准’可能并非偶然,但这也没什么错。时间会告诉我们这是否是一个可以用来比较 JVM 性能的基准。只有当参赛者都站在同一条起跑线上,比赛才算上是真正的比赛。如果 Renaissance 是一个真正的基准,那么它将会保持不变,而不是‘自适应并发生快速变化’,从而允许其他人重现稳定的基准结果,对不同的实现进行比较。”


Shipilev 指出了按照定义起始线来运行基准的困难之处,“如果说这个套件是‘开源和可更改的’,‘基准的选择具有公性’就是不真实的,所以并不能解决当前的问题。”


查看英文原文New Renaissance Performance Benchmark Aims to Compare JVMs


2019-06-18 08:005953
用户头像

发布了 259 篇内容, 共 148.5 次阅读, 收获喜欢 577 次。

关注

评论

发布
暂无评论
发现更多内容

苹果怎么查看UDID iPhone/iPad查看UDID教程【详解】

雪奈椰子

Kyligence CTO|消除技术门槛,人人可用的敏捷数据工具

Kyligence

数据分析 指标平台

基于TCP协议的Socket通信

智趣匠

TCP协议 Socket请求 三周年连更

华为云网站安全解决方案:守护企业数字化转型之路,提升业务效率与安全

YG科技

数据库、

开心档之MySQL 序列使用

接口测试利器:AREX

AREX 中文社区

测试 自动化测试 接口测试 回归测试

REST vs SOAP:两种 Web 服务协议的分析

Apifox

网络协议 Rest API soap web 服务

开心档之C++ STL 教程

雪奈椰子

一文掌握 Go fmt 标准库常用方法的使用

陈明勇

Go golang 三周年连更 输入输出 fmt

汇量科技使用倚天710云实例,高效处理大流量广告请求

云布道师

阿里云

【Java技术指南】「Unirest编程专题」一起认识一下一个“灰常”优秀的Http工具,让Http开发变得如此简单

洛神灬殇

Java HTTP 4月日更 Unirest

iOS MachineLearning 系列(2)—— 静态图像分析之矩形识别

珲少

软件测试/测试开发丨PageObject 设计模式

测试人

软件测试 自动化测试 测试开发 pageobject

保姆级教程!如何在 Anolis 8 上构建基于 Nydus 和 Dragonfly 的镜像加速解决方案?

OpenAnolis小助手

Linux 开源 镜像 解决方案 龙蜥社区

一文详解 PoseiSwap,Nautilus Chain 上的首个 DEX

EOSdreamer111

2023-04-18:ffmpeg中的hw_decode.c的功能是通过使用显卡硬件加速器(如 NVIDIA CUDA、Intel Quick Sync Video 等)对视频进行解码,从而提高解码效

福大大架构师每日一题

golang 音视频 ffmpeg 福大大

ChatGPT们接踵而至,AI会彻底改变我们的工作方式吗?

引迈信息

人工智能 AI 低代码 ChatGPT JNPF

一文详解 PoseiSwap,Nautilus Chain 上的首个 DEX

股市老人

FastAPI 快速开发 Web API 项目: 模板和 Jinja 介绍

宇宙之一粟

Python FastApi 三周年连更 Jinja2

文心一言 VS chatgpt (11)-- 算法导论2.3 7题 3.1 4~5题

福大大架构师每日一题

福大大 ChatGPT 文心一言

手把手教程 | 5分钟用轻量云主机搭建一个JupyterLab

京东科技开发者

Web 云主机 jupyterlab 企业号 4 月 PK 榜

SoapUI参数传递操作详解

Liam

Postman 开发工具 接口测试 soapui

字节跳动副总裁杨震原:好的AI基础设施,如何激发工程师创造力?

字节跳动技术范儿

机器学习 字节跳动 算法 模型训练 算法工程师

回顾2022:Web性能方面有哪些新功能

南城FE

性能优化 前端

Vue3 使用 Teleport 封装 一个 Dialog

程序员海军

Vue Vue 3 三周年连更

跨系统数据一致性问题解决方案汇总

架构精进之路

系统架构 数据一致性 三周年连更

HTTP事务的时延

阿泽🧸

三周年连更 HTTP时延

华为云网站安全解决方案:守护您的网站,让安全无忧

YG科技

如何快速在手机中查看UDID,无需itunes、itools

华为云:网络安全愈发重要,企业该如何保障自身业务安全?

YG科技

Go语言并发编程利器(一):如何正确使用Channel

Jack

Renaissance:比较 JVM 性能的新基准_语言 & 开发_Erik Costlow_InfoQ精选文章