0

CUDA内核函数的可执行代码是在启动程序时立即上传到GPU,还是每次调用内核函数时都上传代码?或者在哪些情况下可能是一种方式或另一种方式?

这会极大地影响编程方法的选择:

  • 从 CPU 主机对内核函数的大量调用
  • 动态并行性的使用以及从 GPU 设备对内核函数的大量调用
4

1 回答 1

2

使用 CUDA 运行时 API 时,内核代码会下载到设备一次。这在 CUDA 运行时上下文创建后作为隐式操作发生。使用 CUDA 驱动程序 API 时,应用程序可以控制何时下载内核以及下载频率。CUDA 文档目前似乎没有涵盖这一点,我将为此提出增强请求。

于 2013-10-11T17:22:58.570 回答