Intel pushes JavaScript changes to support parallel processing

Intel, along with Google and Mozilla, wants its SIMD efforts implemented in ECMAscript 7

Looking to speed up JavaScript applications, Intel is leading efforts to enable SIMD (Single Instruction Multiple Data) capabilities in the official specification underlying JavaScript, although it could be a while before their inclusion.

Intel's efforts to increase performance of browser-based applications require accessing SIMD instructions on the host processor and leveraging data parallelism in applications. Along with collaborators Google and Mozilla, Intel plans to present its SIMD.js proposal in July to the ECMA International TC39 committee, which oversees revisions to the ECMAscript standard underlying JavaScript, said Intel Senior Principal Engineer Mohammad Haghighat.

The group's goal is to get SIMD.js capabilities in ECMAscript 7, which may not arrive for some time. ECMAscript 6, for its part, has been slated for completion later this year.

SIMD capabilities, however, have already been implemented to an extent, according to Haghighat. "The interpreter support for SIMD.js has already landed in Firefox nightly, and I think the full JIT support will be there in a couple of months with our ongoing incremental landing of the JIT parts," he said. "We have also submitted the full patch to Chromium V8 for review." SIMD.js has been included in Intel's Crosswalk Web runtime and distributed in the company's XDK tool for HTML5 mobile application development, Haghighat said.

The planned inclusion of SIMD in ECMAscript was noted by JavaScript founder Brendan Eich in a presentation in March. An analyst with experience developing SIMD hardware, though, sees limited value in enabling SIMD capabilities in JavaScript. "Is this a big deal like a new iPhone mode? No. Modern PCs and tablets have more than enough computational power for almost anything you would want to do," said Peter Christy, and analyst with 451 Research and a founder of Maspar, which a built SIMD-capable supercomputer. "On the other hand, intense computation is a real -- but small -- business, and calculation is important for applications like analytics and search."

SIMD is merely running multiple processors in lockstep, Christy said. "There are some computations where SIMD is perfect -- image processing, for example. But for most computation, there is a limit to the intrinsic parallelism -- how much you can do in parallel -- which limits the use compared to having a grid of full computers that can work independently and then periodically interchange results." Intel, however, sees speech and facial recognition, audio and video processing, and games as possibilities.

This story, "Intel pushes JavaScript changes to support parallel processing," was originally published at Get the first word on what the important tech news really means with the InfoWorld Tech Watch blog. For the latest developments in business technology news, follow on Twitter.


Copyright © 2014 IDG Communications, Inc.

How to choose a low-code development platform