Closed mynewstart closed 3 years ago
当你用一条数据训练的时候,显存就达到了11gb,说明你的模型很大。而且你使用两块GPU进行计算的时候,第一块GPU的显存占用量肯定会增加,所以也不奇怪了。
当你用一条数据训练的时候,显存就达到了11gb,说明你的模型很大。而且你使用两块GPU进行计算的时候,第一块GPU的显存占用量肯定会增加,所以也不奇怪了。
但是gpu0不应该只是在计算梯度的时候使用吗,还有其他什么操作会增加gpu0的显存量吗?
我也不是很了解pytorch占用显存的机制,但是从我做实验的经验来看,pytorch占用的显存并不会释放,除非程序结束
我也不是很了解pytorch占用显存的机制,但是从我做实验的经验来看,pytorch占用的显存并不会释放,除非程序结束
是的,我也有这个体会。我尝试再研究下,感谢回答
单个GPU只能跑一个1 batch,所以将gpusz设为0,总共的batch为1。但是这样却发现跑不了了。 运行一个gpu时,bz=1,gpu占用量11750/12196 运行两个gpu, bz=1,gpu0=0,gpu占用: gpu0:12179 gpu1:5245