设备内存空间中的 CUDA 程序内核代码

cuda program kernel code in device memory space

本文关键字:CUDA 程序 内核 代码 内存 空间      更新时间:2023-10-16

有没有办法找出,gpu(设备)内存中有多少内存占用了内核代码(执行)?如果我有 512 MB 的设备内存,我如何知道有多少可供分配?可视探查器可以显示此类信息吗?

程序代码占用的内存非常少。CUDA 上下文的其余部分(本地内存、常量内存、printf 缓冲区、堆和堆栈)使用更多。CUDA 运行时 API 包括cudeGetMemInfo调用,它将返回代码可用的可用内存量。请注意,由于碎片和页面大小限制,您将无法分配内存的每个最后一个可用字节。最佳策略是从最大值开始,然后递归尝试连续分配较小的分配,直到获得成功的分配。

您可以在我对类似问题的回答中看到对设备内存消耗的更全面的解释,