QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

最新的 Dart VM 在 DeltaBlue 基准测试中击败 JVM

  • 2013-05-14
  • 本文字数:934 字

    阅读完需:约 3 分钟

前不久 InfoQ 曾经报道过,在DeltaBlue 基准测试中,Dart2js 生成的JavaScript 代码已经优于手写的JavaScript 代码,最近,还是基于该基准测试,最新的Dart VM 又击败了JVM7 的64 位服务器版本及其他版本。

Nikolay Botev DeltaBlue 基准测试从 Dart 移植到 Java,针对 Dart-22416(最新的稳定版本)和 Dart-22577(一个每晚构建版本)运行了这一基准测试,并与若干 Java 客户端版本的测试结果进行了比较。在博客中他贴出了以下结果

上表中第一列以微秒为单位,表示测试运行一遍所需的时间;而第二列是每秒运行次数,该值即为上图中测出的DeltaBlue 分数。

我们也在一个8 核AMD FX-8350 处理器、SSD 硬盘的计算机上运行了相同的测试,但是这次是与JVM 7 的64 位服务器版本做比较。在将每个测试运行10 遍之后,得到了以下平均结果:

VM

Average Time (us)

Score

Java HotSpot™ 64-Bit Server VM 1.7.0_21 23.21-b01

1808.18

553.04

Dart-22416

1885.02

530.5

Dart-22610

1610.48

620.93

在我们的测试中,与 JVM 相比,Dart VM 表现出 12% 的性能优势,这与 Botev 的发现一致。

数月前, Greg Lowe 给出了他在JVM 和Dart VM 上运行DeltaBlue 的结果,但他的基准测试使用的是Sun 的原始DeltaBlue 代码,它采用Java 编写并包含一段热身时间:

Lowe 的测试结果中,测试运行次数超过 1000 遍以前,Dart 都体现出了更好的性能;而 Java 在测试运行超过 10000 次后性能更好。鉴于 Botev 的最新测试使用了新版本的 Dart VM,Lowe 在一个 Dart 邮件组中评论道:

我看了一下,看起来 DartVM 现在即使在运行 100000 遍的时候也能够击败 JVM(此前,在运行次数超过一定阈值后,Java 险胜 Dart)。

在我的计算机上,运行 100000 次耗时约为 45 秒。

在运行次数更少时,与 JVM 相比,DartVM 显著胜出。

虽然我们不能够基于一个基准测试就得到最终的结论,但我们可以放心地说,Google 已经将 Dart VM 的性能提升到很高的水平,Dart 成了一个有力的竞争者。

查看英文原文 Latest Dart VM Beats JVM in DeltaBlue Benchmark


感谢臧秀涛对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2013-05-14 10:004667
用户头像

发布了 256 篇内容, 共 74.4 次阅读, 收获喜欢 10 次。

关注

评论

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

理解 Java 中的 NumberFormatException 异常

HoneyMoose

每日一题 | LeetCode 1 两数之和

武师叔

Python 算法 JAV A Leet Code 6月月更

leetcode 51. N-Queens N 皇后(困难)

okokabcd

LeetCode 搜索 算法与数据结构

运维服务体系构建

阿泽🧸

运维体系 6月月更

让开发效率飞速提升的跨端开发神器

Geek_99967b

小程序 小程序容器

红利、辛苦钱、利润和工资【读书笔记】

FunTester

5分钟了解SDN控制平面

穿过生命散发芬芳

SDN网络 6月月更

scp 高效操作之避免 zsh 路径展开

Nick

Linux zsh 6月月更 高效操作 scp

在线JADE转HTML工具

入门小站

工具

Hexo + Github从零搭建个人博客

梁歪歪 ♚

Hexo 博客搭建

面试官:执行一条 SQL 语句,期间会发生什么?

Java全栈架构师

Java MySQL 数据库 程序员 面试

LabVIEW控制Arduino采集热电偶温度数值(进阶篇—2)

不脱发的程序猿

单片机 LabVIEW Arduino VISA 采集热电偶温度数值

华为云AppCube带你5分钟开发微信小程序

乌龟哥哥

6月月更

答应我:监听日志文件变化的这三种方法你一定要会!推荐第三种!

Java全栈架构师

Java 程序员 面试 IDEA 代码人生

this和super的用法与区别

写代码两年半

继承 super javase this 6月月更

使用IDE并不是懒癌表现

Geek_99967b

小程序 小程序容器

互联网电商项目天花板,从立项到交付快速落地,真正帮你解决大型互联网项目经验欠缺的短板

Java全栈架构师

程序员 面试 项目 架构设计 程序员进阶

linux中删除特殊文件

入门小站

Linux

数据库每日一题---第4天:从不订购的客户

知心宝贝

数据库 程序员 前端 后端 6月月更

Flutter的整体架构

Geek_99967b

小程序 小程序容器

Flutter 利用 Redux 中间件完成购物清单离线存储

岛上码农

flutter ios 前端 安卓开发 6月月更

Disruptor 高性能堆内队列 系列一

Nick

Java Disruptor 队列 高性能 6月月更

InfoQ 极客传媒 15 周年庆征文|聊聊 Kafka:Kafka 如何保证一致性

老周聊架构

kafka 架构 云原生 6月月更 InfoQ极客传媒15周年庆

在线文本右边批量删除字符工具

入门小站

工具

大家的 Hexo 博客都还好吗?

jrwng

Hexo

如何写好技术博客

卢卡多多

技术 博客 6月月更

数据类型

Jason199

js 数据类型 6月月更

阿里6月终于有HC了!耗时两月足足面试13轮成功入职阿里!拿到32*15Offer

Java全栈架构师

Java spring 程序员 面试 程序人生

企业网站如何快速被搜索引擎收录

源字节1号

过去一周区块链热点回顾|BAYC项目具有被无限铸币的风险

区块链前沿News

Hoo

跨平台方案的比较

Geek_99967b

小程序 小程序容器

最新的Dart VM在DeltaBlue基准测试中击败JVM_Java_Abel Avram_InfoQ精选文章