SIMD JavaScript Support Added To Firefox, Under Review For Chrome

Written by Michael Larabel in Intel on 30 March 2014 at 06:31 PM EDT. 52 Comments
INTEL
One of Intel's latest open-source adventures has been adding support for SIMD (Single Instruction, Multiple Data) instructions to JavaScript.

For better exploiting the potential of JavaScript performance on the web, Intel has been backing the SIMD.js for an API to exploit data level parallelism in JavaScript. SIMD support is available in modern x86/ARM CPUs along with GPUs. For JavaScript SIMD calls without the CPU hardware support, a software-based fallback would be used.

Intel explains in a 01.org blog post, "We have introduced a set of low level APIs for programming SIMD directly in JavaScript. The API can be efficiently mapped to the processor’s SIMD instructions by a JavaScript JIT compiler when the processor has SIMD capabilities; otherwise, a default VM implementation will accomplish the task. Mozilla’s Emscripten compiler, that compiles C++ to JavaScript through LLVM, is also being modified to generate SIMD code automatically. The SIMD.JS API is architecture-neutral and allows efficient SIMD execution on different platforms that support SIMD (e.g., Intel Architecture and ARM)."

SIMD.js support has landed in the latest Firefox nightly builds (for Firefox 31 and going forward) while the SIMD API support is currently under review for landing within Google's Chrome/Chromium web-browser. There's a JavaScript speed-up of close to 400% using float32x and int32x4 SIMD operations. With the Mandelbrot set are dramatic speed-ups along with other workloads to exploit SIMD parallelism. Developers are now trying to get SIMD support added to the JavaScript standard.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week