Firefox Beta加速了JavaScript和WebAssembly之间的代码调用

栏目: JavaScript · 发布时间: 7年前

Mozilla 刚刚宣布,最新版本的 Firefox Beta 已经极力加快了 JavaScript 和 WebAssembly 代码之间的调用速度。通过 JavaScript 执行 1 亿次 WebAssembly 函数调用的时间,已经从此前的 5500 ms(5.5 秒)、降低到了现在的不到 500 ms(0.5 秒)。在运行依赖于 WebAssembly 的页面(包括一些基于浏览器的游戏)时,这项改进会更加明显。

Firefox Beta加速了JavaScript和WebAssembly之间的代码调用

此前,Mozilla 一直在使用 C++ 来帮助理解 WebAssembly 代码、并将之传递给 JavaScript 代码。 为了提升速度,Mozilla 决定直接切断这个“中间人”。该公司称:

我们拿到了入口存根处(entry stub)运行的 C++ 代码,让它可被 JIT 代码直接调用。

当引擎从 JavaScript 向 WebAssembly 切换时,就会解包 entry stub 数值、并将之放到正确的位置。

Firefox Beta加速了JavaScript和WebAssembly之间的代码调用

此外,Mozilla 还提升了通过 WebAssembly 调用浏览器内置函数的速度,以及从 JavaScript 到 WebAssembly 的单态调用。

如果你对内部工作原理的变化深感兴趣,请一定不要错过 Mozilla 官方撰写的这篇通俗易懂的 博客文章 (附有趣味的插图和注释)。

[编译自: Neowin ]


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Algorithms Unlocked

Algorithms Unlocked

Thomas H. Cormen / The MIT Press / 2013-3-1 / USD 25.00

Have you ever wondered how your GPS can find the fastest way to your destination, selecting one route from seemingly countless possibilities in mere seconds? How your credit card account number is pro......一起来看看 《Algorithms Unlocked》 这本书的介绍吧!

URL 编码/解码
URL 编码/解码

URL 编码/解码

html转js在线工具
html转js在线工具

html转js在线工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具