Intel の River Trail プロジェクトを試しています。Firefox 拡張機能 (FFv19.02) をインストールしました。Windows用のopenCLもインストールしました。「combine」メソッドを除いて、すべての API メソッド (map、reduce、scan、scatter、flatten、partition) が機能しているようです。
var par_A = new ParallelArray([3,3], function(i,j) {return j});
console.log( par_A.combine(function(i) {return this.get(i) + 1} ) );
私は得る:
TypeError: par_A.combine is not a function
問題が何であるか考えていますか?
アップデート:
したがって、1 つの結合で 2D 配列を反復処理できないため、上記の例は意味がありません。簡単にするために、1D の例を見てみましょう。
var par_A = new ParallelArray([1,2,3,4,5]);
console.log( par_A.combine(function(i) {return this.get(i) + 1} ) );
以下に示すように、Intel によって提案されたものとECMAscript ドラフトの 2 つの API メソッドがあります。ECMAscript ドラフトには「結合」メソッドはありませんが、「マップ」の 2 番目のパラメーターとしてインデックスを渡します。上記と同等のものは次のようになります。
var par_A = new ParallelArray([1,2,3.4.5]);
console.log( par_A.map(function(v, i) {return this.get(i) + 1} ) );