Twi*_*tie 14 cuda dynamic-memory-allocation
有人可以清楚解释新的和删除关键字在CUDA 4.2中调用__device__
或__global__
代码时的行为吗?
内存如何分配,如果它在设备上是本地的还是全局的?
我试图在GPU上创建神经网络的问题的上下文条款,我想要一个链接表示(像链表,但每个神经元存储一个链接的连接列表,其中包含权重,指向其他神经元),我知道我可以cudaMalloc
在内核启动之前分配使用,但我希望内核控制网络的创建方式和时间.
谢谢!
Rob*_*lla 20
C++ new
并delete
在设备堆内存上运行.该设备允许以这种方式分配全局(即板载)存储器的一部分. new
并delete
以类似的方式工作于设备malloc
和free
.
您可以使用运行时API调用调整堆可用的设备全局内存量.
您可能还对C++ new/delete示例代码感兴趣.
这些功能需要CC 2.0或更高版本.