我有一组循环运行的操作。如何在OpenCL中累积向量?
for(int i = 0; i < row; i++)
{
sum += arr1[0] - arr2[0]
sum += arr1[0] - arr2[0]
sum += arr1[0] - arr2[0]
sum += arr1[0] - arr2[0]
arr1 += offset1;
arr2 += offset2;
}
现在我想向量化这样
for(int i = 0; i < row; i++)
{
convert_int4(vload4(0, arr1) - vload4(0, arr2));
arr1 += offset1;
arr2 += offset2;
}
的操作,但我怎么积聚在标sum
得到的载体,而不使用循环?
我正在使用OpenCL 2.0。
然后cpu必须快速与此,因为没有多余的乘法,因为在点积gpu也是快 –