0

我有一个数组:

__device__ float4 data[64];

现在我希望将此数组绑定到 3D 纹理,我该怎么做呢?

我只知道如何将 cudaArray 绑定到 3D 纹理。我应该将 data[64] 数组复制到主机内存,然后将该内存复制到 cudaArray 吗?或者有什么方法可以直接将此数组复制到 cudaArray?

提前致谢。

4

1 回答 1

0

不,您只能将 3D-cudaArrays 绑定到 3D 纹理。您可以直接使用将普通设备内存复制到 cudaArraycudaMemcpy3D(const struct cudaMemcpy3DParms *p);而无需通过主机。但另一方面,你为什么要使用普通的平面阵列呢?如果您需要写入数组,您可能需要查看 cuda 表面并避免复制。

于 2013-06-23T10:42:22.390 回答