Intel发布JavaScript扩展以支持并行运算

JavaScript,这个支撑Web的语言,在连移动设备都拥有并行运算能力的今天,还仍然以串行执行的方式存在。Intel实验室正在研究扩展JavaScipt,以便充分利用多核系统的运算能力,他们已经发布了一个相关的FireFox插件。

这个JavaScript的并行扩展代号为River Trail,是Intel实验室的一个项目,致力于在Web应用中利用Intel多核处理器和向量扩展运算能力。 River Trail将促使更多的计算密集型应用程序——如图片处理——出现在浏览器中。

Intel实验室的Stephan Herhut认为,与现有Web技术的集成是他们主要考虑的问题

最让我激动的是,River Trail背后所使用的技术,可以与现有Web技术无缝集成。River Trail使用了一种简洁但强大的并行编程模型。我们花了很大力气来让这个扩展看起来尽量自然。我们的目标是让用户在使用River Trail构建Web应用时,与使用标准JavaScript时一样简单。而且,由于River Trail本身就在JavaScript中,可以更好的与HTML5 API结合。我们特别保证,River Trail与WebGL结合的非常好。WebGL是近期才被引入的OpenGL接口,用于在浏览器中渲染3D图像。我们有一个demo就是模拟超过 4000个个体的物理行为,计算部分使用了Trail River,视觉图像部分则使用了WebGL。

River Trail使用确定性并行数据结构对JavaScript进行扩展,该结构在运行时会被转换为底层硬件抽象层指令。通过利用多核处理器和向量处理指令,River Trail可以大幅提升执行速度

值得注意的是,River Trail还为JavaScript添加了ParallelArray这一数据结构。这是存储并行数组数据的只读数据结构,可以通过构造函数或调用 ParallelArray原型上的方法来实例化。它的构造函数接受JavaScript普通数组,类型化数组或者可以生成这些数组的函数。例 如,“new ParallelArray([1,2,3])”将创建一个存储1,2,3的ParallelArray实例。该数组的内容能够被 combinefiltermapreduce等函数进行处理,而且是并行执行的。这些函数将会被编译成OpenCL,并使用JavaScript的子集。

现在就可以下载Firefox插件来体验River Trail

查看英文原文:JavaScript Extension that Adds Parallel Processing Capabilities Unveiled by Intel

译者 王瑜珩 InfoQ中文站编辑,ThoughtWorks咨询师,关注企业级Web开发、敏捷实践以及项目管理。

This entry was posted in 未分类. Bookmark the permalink.

发表评论

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 更改 )

Twitter picture

You are commenting using your Twitter account. Log Out / 更改 )

Facebook photo

You are commenting using your Facebook account. Log Out / 更改 )

Google+ photo

You are commenting using your Google+ account. Log Out / 更改 )

Connecting to %s