当调用CUDA核函数进行特定线程配置时,有没有严格规定哪些内存空间(设备/主机)的核函数参数应该存在以及它们应该是什么类型?
假设我启动一个1-D线程网格,使用
kernel<<<numblocks, threadsperblock >>> (/*parameters*/)
我能直接将一个主机-整数变量作为
int foo
的参数传递给CUDA kernel吗?或者我应该为一个单独的整数,比如dev_foo
,分配内存,并将foo
复制到dev_foo
中,然后将dev_foo
作为kernel参数传递?
cudaHostAlloc()
)也是合法/可行的。 - Robert Crovella