我有一个指向 CUDA 整数数组的指针 ptr,并且想要从主机代码有效地将此数组的所有元素初始化为 -1。我怎样才能实现这个目标?
乍一看,cudaMemset 不适合,因为它是按字节工作的......
-1
表示为
0xffffffff
,请参阅有关二进制补码的维基百科页面了解更多信息。因此,您可以将每个字节设置为
0xff
,如下所示:
cudaMemset(ptr, 0xff, size);
请注意,我们不能保证您的 cudaMemset
不会被 CUDA 驱动程序转换为内核,即驱动程序可以执行 GPU 代码来执行您的 memset。