最后一个参数对cudaHostGetDevicePointer意味着什么

时间:2015-04-14 16:41:10

标签: cuda

最后一个参数的大部分解释是"扩展的标志(现在必须为0)" .Link在这里:http://www.cs.cmu.edu/afs/cs/academic/class/15668-s11/www/cuda-doc/html/group__CUDART__MEMORY_ga475419a9b21a66036029d5001ea908c.html#ga475419a9b21a66036029d5001ea908c

那具体是什么意思?有人可以帮我提供一些代码解释吗?

1 个答案:

答案 0 :(得分:1)

cudaHostGetDevicePointer的当前文档为here

来自文档:

  

flags提供了将来的版本。目前,它必须设置为0.

这意味着它只是一个占位符。在未来的某个CUDA版本中(超出CUDA 7.0),可能会使用该值。目前它不会导致任何行为改变,但您仍然需要将其指定为零。将其指定为零应在任何未来的CUDA版本中启用兼容性(无行为更改),即使非零值会导致行为差异。

关于cudaHostGetDevicePointer功能的使用:

它与零拷贝映射内存一起使用,可从主机和设备访问。要从设备访问它,您需要设备指针,该指针可能与非UVA环境中的主机指针不同。此函数提供与先前分配的/固定/映射的主机指针相关联的设备指针。

Here是一个用法示例。