释放GPU显存

问题:在使用GPU训练网络时,出现RuntimeError: CUDA out of memory. Tried to allocate 20.00 MiB (GPU 0; 11.17 GiB total capacity; 134.77 MiB already allocated; 8.56 MiB free; 3.23 MiB cached),自己明明11G的显存,为啥还给占满了。

1 .nvidia-smi查看GPU状态:

释放GPU显存这时我们发现Memory-Usage(显存使用率)几乎占满了,而Volatile GPU-Util(GPU使用率)却为0。关于这两个名词再做一下解释:Memory-Usage反映了显卡的吞吐量大小,Volatile GPU-Util反映了计算速度的能力,这两者共同决定了显卡的性能。既然问题找到了,那下面我们就想办法去解决。

2 .nvidia-smi查看:
释放GPU显存现在杀死PID:23220的GPU进程。

3 .kill -9 23220

释放GPU显存

ok.问题解决散花