【发布时间】:2013-11-17 05:03:13
【问题描述】:
在我的代码中,我需要调用一个 CUDA 内核来并行化一些矩阵计算。然而,这个计算必须迭代完成约 60,000 次(内核在 60,000 次循环迭代中被调用)。
这意味着,如果我在每次调用内核时都执行 cudaMalloc/cudaMemcpy,那么大部分时间将花费在内存分配和传输上,并且我的速度会明显变慢。
有没有办法说,在for循环之前分配一块内存,在内核的每次迭代中使用该内存,然后在for循环之后,将该内存从设备复制回主机?
谢谢。
【问题讨论】:
标签: cuda