我遇到以下代码段的问题:
tgid = (pixelLoc[get_global_id(0)].x + 0) + (pixelLoc[get_global_id(0)].y + 0) * imWidth;
plid = (blockSize + 0) + (blockSize + 0) * (blockSize * 2 + 1);
prevCache[plid] = prevFrame[tgid];
barrier(CLK_GLOBAL_MEM_FENCE);
printf("%i : %i\n", prevCache[plid], prevFrame[tgid]);
代码应将图像数据的单个像素值复制到本地内存。 pixelLoc包含我想要移动到本地内存的所有像素位置的坐标。
我得到的问题是if条件语句应该打印相同的2个数字,例如:34:34。因为它应该将相同的值从prevFrame移动到prevCache,但它是不同的值。
非常感谢任何帮助!