ParallelJS: JavaScript的数据并行

banq 13-12-28
         



ParallelJS属于类似数据并行,同样一段代码被并行执行几次,操作的数据是同一个数据集中不同的元素,MapReduce也是一种数据并行编程模型

ParallelJS开始于 River Trail, 这是一个FireFox的Intel的javascript扩展。 ParallelJS 将RiverTrail理念带到普通数组操作上,被包括在最新的 Firefox Nightly版本,它增加了三个对数组操作的方法:

Array.prototype.mapPar()
Array.prototype.filterPar()
Array.prototype.reducePar()

ParallelJS将在ECMAScript 8中提供,你不用担心,ECMAScript 7和8将会被ECMAScript 6更快且更轻量推出。

提供顺序Sequentially Concurrently并发 SIMD和GPU几种运行模型。

相对于数据并行,Mozilla 正在考虑加入任务并行,任务并行是不同代码并行地执行,类如fork-join 风格。