编程 CUDA 架构

  • 本文关键字:架构 CUDA 编程 cuda
  • 更新时间 :
  • 英文 :


在 CUDA 架构编程过程中,我遇到了一个问题:设备资源太有限。换句话说,堆栈和堆太小。

在研究它时,我发现了一个功能 cudaDeviceSetLimit(cudaLimitStackSize, limit_stack)这扩大了堆栈大小,以及堆的类似大小。虽然,它们的尺寸仍然太有限了。

我想知道如何在设备上存储更多信息?

提供堆栈和堆是为了方便。但是,如果您的 GPU 足够新,您可以在设备上使用 cudaMalloc 分配内存。在这种情况下,限制是 GPU 板载内存。

如果你想要更多,你需要一个自定义内存分配来管理大量的系统内存,并与GPU共享(参见cudaHostRegister)。然后,限制将是您的系统内存。

最新更新