红帽白皮书新鲜出炉!点击获取,让你的云战略更胜一筹! 了解详情
写点什么

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

  • 2012-02-11
  • 本文字数:912 字

    阅读完需:约 3 分钟

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 实例。该数组的内容能够被 combine filter map reduce 等函数进行处理,而且是并行执行的。这些函数将会被编译成 OpenCL,并使用 JavaScript 的子集。

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

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

2012-02-11 19:003016
用户头像

发布了 63 篇内容, 共 23.3 次阅读, 收获喜欢 1 次。

关注

评论

发布
暂无评论
发现更多内容

Android:彻底消灭OOM的实战经验分享(千分之1-5----万分之0-2)

android 程序员 移动开发

ARouter系列3:继续学习(手写一个Arouter框架)

android 程序员 移动开发

Dalvik 和 ART 有什么区别?深扒 Android 虚拟机发展史,真相却出乎意料!(1)

android 程序员 移动开发

Android高级面试题:面试十几家公司入职外企后,掌握这几个关键点面试通过率很大

android 程序员 移动开发

Android:帧动画和补间动画看这篇就足够了!

android 程序员 移动开发

AsyncTask相关知识

android 程序员 移动开发

cmake使用教程(九)-关于安卓的交叉编译

android 程序员 移动开发

Android面试题之性能优化篇

android 程序员 移动开发

App怎么做才能永不崩溃

android 程序员 移动开发

Android题集四大组件之Service

android 程序员 移动开发

Android高级架构师整理面试经历发现?(大厂面经+学习笔记

android 程序员 移动开发

Android高频网络面试专题必知必会

android 程序员 移动开发

C语言(二):指针基础

android 程序员 移动开发

Dagger2在SystemUI中的应用

android 程序员 移动开发

Android面试题(window、进程、线程篇

android 程序员 移动开发

Android:AsyncTask使用

android 程序员 移动开发

Angular-集成-Typescript-版本-Echarts-(附代码)

android 程序员 移动开发

AOP 最后一块拼图 _ AST 抽象语法树 —— 最轻量级的AOP方法

android 程序员 移动开发

APP 热修复都懂了,你会 SDK 热修复吗?最全方案在这里!

android 程序员 移动开发

App 金刚区导航菜单,类似淘宝、QQ 音乐等 APP 导航,方格布局横向滑动翻页带滚动条

android 程序员 移动开发

BAT资深面试官-带你破解Android高级面试

android 程序员 移动开发

Cocos2d-x 3

android 程序员 移动开发

Android面试必问:Handler、Bitmap、线程

android 程序员 移动开发

Android面试老生常谈的 View 事件分发机制,看这一篇就够了!

android 程序员 移动开发

Android面试:一个进程有多少个-Context-对象?看似初级的问题,答的好的人确不多

android 程序员 移动开发

Bmob后端云+ImageLoader框架实现图文列表

android 程序员 移动开发

ClassLoader在热修复中的应用

android 程序员 移动开发

Cocos2d-x 3(1)

android 程序员 移动开发

Android面试:IntentService源码分析

android 程序员 移动开发

App基于手机壳颜色换肤?先尝试一下用 KMeans 来提取图像中的主色

android 程序员 移动开发

APP终极瘦身方案

android 程序员 移动开发

Intel发布JavaScript扩展以支持并行运算_JavaScript_Dio Synodinos_InfoQ精选文章