10 月 23 - 25 日,QCon 上海站即将召开,现在购票,享9折优惠 了解详情
写点什么

谷歌放弃 Octane JavaScript 基准测试

  • 2017-05-03
  • 本文字数:1089 字

    阅读完需:约 4 分钟

谷歌宣布他们不再对该公司的 Octane JavaScript 基准测试提供支持,理由是这套测试缺乏实用价值;此外还有迹象表明 Chrome 正在筹划巨变。

在一篇博客中,谷歌声称这套测试在早期是很有用的,但之后就变得过时了。它无法反映如今构建网页的普遍方式。

Octane 帮助引擎开发者进行优化工作,从而使计算密集型应用程序在 JavaScript 上获得足够的性能,令 JavaScript 成为 C++ 或 Java 的可行替代。

然而到了 2015 年,大多数 JavaScript 的实现都为在 Octane 中获得高分而使用了编译器优化措施。此外,我们开始注意到令 Octane 跑分更高的 JavaScript 优化经常在实际应用场景中产生相反的效果。

此事件的讽刺之处在于,谷歌被他们的竞争对手在自家的测试中击败了。在一个宣传页面上,微软声称在 Octane 2.0 测试中 Edge 比 Chrome 更快,强调“谷歌自己的性能测试显示微软 Edge 比 Chrome 和 Firefox 更快。”

不过微软这边看起来也认可谷歌的说法,觉得基准测试难以反映实际应用的情况:

经常有人问我们关于 JavaScript 测试成绩的话题。虽说测试成绩并不总是与实际应用性能直接相关,但它在高级别上自有用途,可以在纵向对比改进的程度。

Brian Terlson 是微软 Chakra JavaScript 引擎的程序经理。他在 Hacker News 上的一条评论写道“Octane 作为基准测试是很好的,但我们必须在一大堆测试中找到平衡点,最后还是要把工作落实到实际应用中(这是我们从一开始就密切注意的事情,例如我们意识到解释器可以加快很多实际应用的启动速度,但对 Octane 成绩没什么帮助)”。

显然浏览器厂商觉得他们已经掌握了大多数提升 JavaScript 性能的诀窍了。通过类似 WebAssembly 这样的功能,我们可以用不同于过去多年以来的方式获得性能改进。现在更重要的是提升用户的实际体验,所以我们需要全新的基准测试工具。

很多迹象表明 Speedometer 是现有的一个不错的选择。Jeff Atwood 已经为它背书,Chromium 团队的一篇博文也给出了同样的看法。Speedometer 使用流行的TodoMVC 样例来测试浏览器性能。 Brower Bench 也有一个浏览器图形测试(Motion Mark)和一个 JavaScript 测试(JetStream)。

Chromium 团队的博客还说他们正在基于现代的 JavaScript 模式筹划改进 JavaScript 性能,暗示他们正在准备大干一场:

等着更新到我们全新的引擎架构吧,这是为现实应用打造的成果。

Octane 仍可通过 GitHub 访问,开发者可以继续使用它。

查看英文原文 Google Retires Octane JavaScript Benchmark


感谢张卫滨对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2017-05-03 19:006076

评论

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

北京主题展|2022第十五届北京国际物联网展览会

InfoQ_caf7dbb9aa8a

[ Kitex 源码解析] 函数式编程

baiyutang

golang 微服务 Go 语言 11月日更

论文解读丨文本行识别模型的再思考

华为云开发者联盟

数据集 文档 文本 文本识别 语言模型

WebRTC DTLS | 谈谈 DTLS Fragment

泰一

DTLS

数字藏品是什么?有风险吗?谁来监管?

CECBC

提升RTC音频体验 - 从搞懂硬件开始

Wilber

音视频 RTC 3A 音频技术 音频3A

从原理带你掌握Spring MVC拦截处理器知识

华为云开发者联盟

Spring MVC 拦截器 拦截处理器 HTTP请求

【Flutter 专题】04 图解第一个程序遇到的安装依赖问题

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 11月日更

只需10分钟,让你的企业应用具备OCR能力

明道云

【高并发】ScheduledThreadPoolExecutor与Timer的区别和简单示例

冰河

Java 并发编程 多线程 高并发 异步编程

Hi,Contributor,有一份专属周边礼包等你领取!

SphereEx

开源社区 ShardingSphere SphereEx Contributor 周边

直播 | 大数据能力体系构建的技术方法全在这了!

百度开发者中心

大数据 百度 直播 开发者沙龙

精选案例 | YRCloudFile 引领自动驾驶存储技术新趋势

焱融科技

自动驾驶 云计算 分布式 高性能 文件存储

在浏览器里使用 SAP GUI

汪子熙

SAP abap SAPGUI 11月日更

SAP UI 搜索分页技术

汪子熙

JavaScript Web SAP 11月日更

测试左移实践介绍

刘冉

TDD 自动化测试 测试驱动开发 测试左移 ATTD

明道云初学者如何速成报表管理系统

明道云

flutter 开发中 vscode 插件推荐 3

坚果

flutter 11月日更

dart系列之:创建Library package

程序那些事

flutter dart 程序那些事 11月日更

研发效能提升的八项实践建议

博文视点Broadview

货币“大动作”,中国数字货币DCEP即将落地!

CECBC

前端开发:Node版本引起的报错问题

三掌柜

11月日更

建设区块链基础设施,加速区块链等新技术与传统行业深度融合发展

CECBC

北京智博会主题展|2022第十五届北京国际物联网展览会

InfoQ_caf7dbb9aa8a

复杂JSON结构创建语法

FunTester

Java json 接口测试 测试开发 FunTester

Java编程中忽略这些细节,Bug肯定找上你

华为云开发者联盟

Java 编程 对象 垃圾回收 switch语句

【LeetCode】整数替换Java题解

Albert

算法 LeetCode 11月日更

部署Apollo

小鲍侃java

11月日更

Android C++系列:Linux文件系统(一)

轻口味

c++ android jni 11月日更

Vue进阶(贰佰):前端UI框架介绍

No Silver Bullet

Vue UI 11月日更

Java将增加虚拟线程,挑战Go协程

编程宝库

Java golang 并发

谷歌放弃Octane JavaScript基准测试_JavaScript_David Iffland_InfoQ精选文章