手机版
你好,游客 登录 注册
背景:
阅读新闻

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

[日期:2018-10-10] 来源:cnbeta.com  作者:Linux [字体: ]

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]

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.aspx

本文永久更新链接地址https://www.linuxidc.com/Linux/2018-10/154745.htm

linux
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款