Intel/Google/Mozilla联手:浏览器CPU加速12倍

Web 浏览器性能方面,JavaScript 占据着举足轻重的地位,不过随着网络内容的日益复杂,很多时候即使强大的配置也会有些力不从心,导致浏览器卡顿、卡死。

Intel 日前宣布将与 Google、Mozilla 两大浏览器巨头合作,利用 CPU SIMD 指令来加速 JS 代码的执行,不需要任何外部插件,完全跨平台,只要是使用 JS 的地方都可以直接使用。

SIMD 即单指令多数据(此外还有 SISD、MIMD、MISD),是现代微处理器中最重要的设计,通过并行运算机制在有限的功耗空间内提升性能,SSE、MMX 等指令集就是基于 SIMD 架构的。

Intel 已经提出了一些 API,可以直接对 SIMD JS 进行编程,也可以直接通过 JS JIT 编译器进行编译,还能通过 Mozilla Emscripten 编译器来生成 SIMD 代码。

另一点非常重要的是,SIMD JS 是与架构无关的,不管是 x86 还是 ARM,只要支持 SIMD 就可以。

目前,Firefox Nightly、Google Chromeium 两个试验性质的浏览器分支都已经开始整合 SIMD JS API,经测试可在不同平台上普遍带来3-6 倍的性能提升,平均 4 倍左右,个别情况下甚至能够达到十多倍!

以下就是 Intel 给出的一些加速示例,Chromeium 浏览器在 Ivy Bridge Core i7-3667U+Ubuntu 13 32/64 位、Bay Trail Atom Z3770+Android 4.4 三个平台上的表现:

131819013112151

Intel、Google、Mozilla 还正在联合制定相应提案,希望能够在 JS ES7 标准中正式加入 SIMD 加速。

131819099202888

标量操作、SIMD 矢量操作对比

131819096241445

Firefox 加速示例:接近 4 倍

131819096394674

Chromeium 加速示例:3.3 倍

131819095309473

代码示例:标量版

131819096553202

代码示例:SIM 矢量版

关于技术原理和编程细节请点击:Intel 高级软件工程师 Ivan Jibaja 的这篇文章,以及 Intel 的官方幻灯片

收藏 2 评论

相关文章

可能感兴趣的话题



直接登录
最新评论
  • 矢量操作!

    不过 JavaScript 真是成为越来越奇葩的语言了。一方面,它灵活的高阶语言特性被用来构造很大型的服务端程序;另一方面,它也成为了网页上的一种汇编语言,网页上的 JavaScript 经常是代码生成器和优化/压缩器吐出来的……

  • 灯盏细辛   2014/06/16

    ES7...还希望能够...唉

跳到底部
返回顶部