使用cudaMemset在CUDA中清除uint3

时间:2012-09-09 17:26:35

标签: cuda

我是uint3类型的数据。我的应用程序填充成员x和y一次,但成员z多次填充。所以,我需要在下一个数据到来之前清除成员z。可以使用cudaMemSet吗?

1 个答案:

答案 0 :(得分:1)

cudaMemset2D可用于设置值。

int* dev_ptr = (int*)dev_uint3_ptr;
cudaMemset2D(
    dev_ptr + 2,    // offset device_ptr by 2 elements so first element is z
    sizeof(uint3),  // set pitch to size of uint3 so each increment is to next z
    0,              // set to 0
    sizeof(int),    // sizeof(z)
    elements        // number of elements in your array
    );

我不确定表现。您可能需要考虑从结构数组切换到数组结构。