相关疑难解决方法(0)

CUDA零拷贝内存注意事项

我想弄清楚是否使用cudaHostAlloc(或cudaMallocHost?)是合适的.

我正在尝试运行一个内核,我的输入数据超过了GPU上可用的数量.

我可以将cudaMalloc占用比GPU更多的空间吗?如果没有,让我说我分配1/4我需要的空间(适合GPU),使用固定内存有什么好处吗?

我基本上必须从那个1/4大小的缓冲区复制到我的全尺寸malloc缓冲区,这可能不比仅使用正常的cudaMalloc快吗?

这种典型的使用场景是否适合使用cudaMallocHost:

  1. 分配固定主机内存(让我们称之为"h_p")
  2. 使用输入数据填充h_p-
  3. 在GPU上获取h_p的设备指针
  4. 使用该设备指针运行内核来修改数组的内容 -
  5. 使用正常的h_p,现在修改了内容 -

那么 - 第4步和第5步之间没有副本可以开心吗?

如果这是正确的,那么我可以看到至少适合GPU的内核的优势

c++ cuda

10
推荐指数
2
解决办法
8192
查看次数

标签 统计

c++ ×1

cuda ×1