Feeds

Intel extends JavaScript for parallel programming

Google meets the Anti-Native Client

Choosing a cloud hosting partner with confidence

Intel is developing an extended version of JavaScript that brings parallel programming to web applications.

Codenamed River Trail, the project was revealed this week at the Intel Developer Forum in San Francisco, and the company has open sourced an early version of the technology in the form of a Firefox add-on.

For the most part, JavaScript – the web's standard scripting language – does not give applications access to multiple processor cores, or even a processor's vector instructions. This puts web applications at a significant disadvantage next to traditional native software.

"Clearly, it is time for JavaScript to catch up," reads a blog post from Stephan Herhut of Intel Labs. "With River Trail, it will finally be possible to stay in the browser even for more compute intensive applications like photo editing."

The technology provides access both to multiple cores and vectors instructions, and since it's embedded with JavaScript, Intel says, it will play nicely with HTML5, Canvas, and WebGL – the emerging standard building hardware-accelerated 3D graphics with JavaScript.

At IDF, Intel showed off a physics simulation built with River Trail and WebGL, and on an eight-core machine, it ran about fifteen times faster than a serial version written with standard JavaScript.

Though Mozilla played no role in the development of River Trail, Mozilla chief technology officer and JavaScript inventor Brendan Eich appeared at IDF in support of the technology. "The demo shows a 15x speedup over serial JavaScript. It lights up the ridiculously parallel hardware in modern CPUs and GPUs, for audio, video, image processing, automated voice response, computer vision, 3D gaming, etc. – all written in memory-safe, clean, functional JavaScript, without threads and their data races and deadlocks," Eich tells us over email.

Intel says it would like to submit the technology for standardization, and Eich – who works with the ECMA International, the JavaScript standard body – says he will promote the technology with the organization.

The technology was unveiled a day before Google released a new version of its Chrome browser that includes Native Client, a sandboxing technology for securely running native code inside a browser. Google is pushing Native Client because it too can give browser apps access to multiple cores and vector instructions, but Mozilla prefers to keep native code out of the browser.

"The promise of the web is that it's cross-platform, that it's source driven, that it evolves with time. Native Client doesn't actually solve any of those problems that the web actually solves," Mozilla open source evangelist Chris Blizzard told us this summer.

"Once you download the native code, there's no opportunity for browser optimization. There's no opportunity for all kinds of things. You have to keep in mind that the evolution of browsers over the last several years has been that we have made a 10X improvement on existing sites. The evolution of browsers has made everyone's applications faster, whether or not you've updated that site in X number of years.

"With Native Client, all of that disappears. The fast innovation we've seen on the web disappears. A source code–based world means that we can optimize things that the user hasn't even thought of, and we can deliver that into their hands without you, the developer, doing anything."

River Trail maintains this "source-code-based" setup. It merely extends JavaScript, adding a new ParallelArray type – similar to WebGL's typed arrays. The open source Firefox add-on includes a modified compiler that uses these ParallelArrays and generates OpenCL, which compiles to SSE instructions or parallel GPU instructions.

"River Trail extends JavaScript with a simple, yet powerful data-parallel programming model," writes Intel's Herhut. "Much effort was spent to make this extension feel as natural as possible. Our goal was to make writing web applications with River Trail as easy as writing regular JavaScript." ®

Business security measures using SSL

More from The Register

next story
'Windows 9' LEAK: Microsoft's playing catchup with Linux
Multiple desktops and live tiles in restored Start button star in new vids
Not appy with your Chromebook? Well now it can run Android apps
Google offers beta of tricky OS-inside-OS tech
New 'Cosmos' browser surfs the net by TXT alone
No data plan? No WiFi? No worries ... except sluggish download speed
Greater dev access to iOS 8 will put us AT RISK from HACKERS
Knocking holes in Apple's walled garden could backfire, says securo-chap
NHS grows a NoSQL backbone and rips out its Oracle Spine
Open source? In the government? Ha ha! What, wait ...?
Google extends app refund window to two hours
You now have 120 minutes to finish that game instead of 15
Intel: Hey, enterprises, drop everything and DO HADOOP
Big Data analytics projected to run on more servers than any other app
iOS 8 release: WebGL now runs everywhere. Hurrah for 3D graphics!
HTML 5's pretty neat ... when your browser supports it
prev story

Whitepapers

Providing a secure and efficient Helpdesk
A single remote control platform for user support is be key to providing an efficient helpdesk. Retain full control over the way in which screen and keystroke data is transmitted.
Saudi Petroleum chooses Tegile storage solution
A storage solution that addresses company growth and performance for business-critical applications of caseware archive and search along with other key operational systems.
Security and trust: The backbone of doing business over the internet
Explores the current state of website security and the contributions Symantec is making to help organizations protect critical data and build trust with customers.
Reg Reader Research: SaaS based Email and Office Productivity Tools
Read this Reg reader report which provides advice and guidance for SMBs towards the use of SaaS based email and Office productivity tools.
Security for virtualized datacentres
Legacy security solutions are inefficient due to the architectural differences between physical and virtual environments.