我有一个 M x N 条目的二维数组。
A0 A1 A2 A3 A4 A5 ... AN
B0 B1 B2 B3 B4 B5 ... BN
...
我想在两个阶段将此数组减少为单个值。
阶段1:计算一行中每个项目的函数值,并将它们与一些权重相加。
A = W0*f(A0) + W1*f(A1) + W2*f(A2) + ...
B = W0*f(B0) + W1*f(B1) + W2*f(B2) + ...
第2阶段:将结果与输入向量进行比较并计算卡方值。
CHI_SQ = (A - X)^2/SX^2 + (B - Y)^2/SY^2 + ...
我正在尝试使用OpenCL并行执行此操作。但是,我很难找到这种算法的最佳策略。例如,有许多例子会循环遍历矩阵行,而许多声明你的资源不应该这样做。有人可以如此善意地概述如何以最佳方式解决这个问题吗?