Windows 8 の Visual Studio 2012 で C++ AMP を使用していexperimentData
ますexperimentFactors
。2D array_view の最初の次元と 1D array_view の 1 次元を反復処理したいと考えています。これは私が持っているものですが、これにはオーバーロードがないというエラーが常に発生します。numberOfTests
最初の次元であるを反復処理したいと考えています。私は行が欲しいです:
auto test = experimentData[idx];
データの行全体を返します。の方法はこれを行う方法だと思いますが、section
方法array_view
がわかりません。
array_view<int_2, 2> experimentData(numberOfTests, numberOfSolutions, initialConditionSet);
array_view<float_2, 1> experimentFactors(numberOfTests, factorData);
extent<1> e_size(numberOfTests);
parallel_for_each(e_size, [=] (index<1> idx) restrict(amp) {
auto test = experimentData.section(idx);
auto factors = experimentFactors[idx];
analysisAlgorithm(test, factors);
});
オブジェクトはのtest
1xN セクションである必要がありますexperimentData
array_view
。オブジェクトは からのfactors
1 つのアイテムである必要がありますexperimentFactors
array_view
。
明確化
array_viewexperimentData
には M 行と N 列があります
array_viewexperimentFactors
には M 行があります