关于Linux+GPU服务器下GPU显存不足问题
生活随笔
收集整理的這篇文章主要介紹了
关于Linux+GPU服务器下GPU显存不足问题
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
關(guān)于Linux+GPU服務(wù)器下GPU顯存不足問題
- 1. 問題描述
- 2. 解決方法
- 2.1 傳統(tǒng)方法
- 2.2 殺死進(jìn)程法
- 3.備注
1. 問題描述
在基于Linux操作系統(tǒng)環(huán)境下的GPU服務(wù)器上跑深度學(xué)習(xí)代碼時(shí),我們常常會(huì)因?yàn)槿绮徽M顺龅葐栴}導(dǎo)致資源沒被正常回收而出現(xiàn)GPU顯存不足的情況,此時(shí)再次運(yùn)行學(xué)習(xí)代碼就會(huì)出現(xiàn)如下圖所示報(bào)錯(cuò)情況。從圖片上可以看出我10.91GiB的顯存僅剩下362.38MiB,報(bào)錯(cuò)提示原因也是ResourceExhaustedError(資源耗盡錯(cuò)誤)。
2. 解決方法
2.1 傳統(tǒng)方法
- 傳統(tǒng)方法當(dāng)然是重啟喲,這是在不知道解決辦法時(shí)的萬能鑰匙,手動(dòng)滑稽。
2.2 殺死進(jìn)程法
- 使用fuser命令顯示所有占用nvidia設(shè)備的進(jìn)程processID。(說明:fuser命令 能展列出當(dāng)前磁盤上的某個(gè)文件、掛載點(diǎn)、以及網(wǎng)絡(luò)端口的使用情況,并顯示使用其資源的進(jìn)程processID,默認(rèn)情況下每個(gè)文件名后面跟一個(gè)字母表示訪問類型)
-
操作過程如下:
-
使用kill命令將占用Nvidia設(shè)備的進(jìn)程殺掉,并再次使用fuser命令確認(rèn)。(說明:使用kill命令時(shí)默認(rèn)的命令參數(shù)為-15,而kill -15代表的信號(hào)為SIGTERM,這是告訴進(jìn)程進(jìn)行終止操作,這并不能保證一定殺干凈;而kill -9代表的信號(hào)是SIGKILL,表示進(jìn)程被殺死,不能被忽略)
- 其中我的PID為上圖的22448,操作過程如下圖所示:
3.備注
- 到此問題就解決了,繼續(xù)學(xué)習(xí)。
- 問題是本人在Ubuntu 16.04系統(tǒng)下使用tensorflow框架在Nvidia GTX 1080Ti上進(jìn)行機(jī)器學(xué)習(xí)時(shí)遇到的。因?yàn)榻?jīng)常會(huì)遇到,所以做了問題總結(jié),希望對(duì)出現(xiàn)同樣問題的你有所幫助。
總結(jié)
以上是生活随笔為你收集整理的关于Linux+GPU服务器下GPU显存不足问题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 训练PyTorch模型遇到显存不足的情况
- 下一篇: python运行提示显卡内存不足_Pyt