__global__ void finalImageGathering(float3 *lists[]) {
unsigned int x = blockIdx.x*blockDim.x + threadIdx.x;
unsigned int y = blockIdx.y*blockDim.y + threadIdx.y;
float3 test;
for(int i = 0; i<Blah; i++)
test += lists[i][y * width + x];
}
是否可以有一个指向不同float3列表的指针列表,或者我是否需要做其他事情?
答案 0 :(得分:2)
你可以这样做,CUDA对指针间接除了函数指针以外的任何东西没有特别的限制(并且这种限制大多数也在最近的硬件上消失了)。更复杂的是为这样的设备指针数组分配内存,并在需要时将其复制到主机内存中。