当我使用 cudaMalloc (100) 时,它保留了超过 100 B (根据这里的一些用户,这是由于粒度问题和内务信息。
是否可以根据我需要保留的字节来确定这个空间有多大?
太感谢了。
编辑:我会解释为什么我需要知道。
我想在 GPU 上的巨大图像上应用卷积算法。为此,由于 GPU 上没有足够的内存来保存它,我需要将图像分成几行并多次调用内核。
事实上,我需要发送 2 张图像,OnlyRead 矩阵和 Results 矩阵。
我想根据可用内存量先验计算可以发送到设备的最大行数。
第一个 cudaMalloc 成功执行,但在尝试执行第二个 CudaMalloc 时出现问题,因为第一个保留占用的字节数比预期的多。
我现在正在做的是考虑可用内存量比它少10%......但这只是一个不知从何而来的神奇数字......