人妖在线一区,国产日韩欧美一区二区综合在线,国产啪精品视频网站免费,欧美内射深插日本少妇

新聞動態(tài)

Pytorch GPU內(nèi)存占用很高,但是利用率很低如何解決

發(fā)布日期:2022-03-28 08:55 | 文章來源:gibhub

1.GPU 占用率,利用率

輸入nvidia-smi來觀察顯卡的GPU內(nèi)存占用率(Memory-Usage),顯卡的GPU利用率(GPU-util)

GPU內(nèi)存占用率(Memory-Usage) 往往是由于模型的大小以及batch size的大小,來影響這個指標(biāo) 顯卡的GPU利用率(GPU-util) 往往跟代碼有關(guān),有更多的io運算,cpu運算就會導(dǎo)致利用率變低。

比如打印loss, 輸出圖像,等等

這個時候發(fā)現(xiàn),有一塊卡的利用率經(jīng)常跳到1%,而其他三塊卡經(jīng)常維持在70%以上

2.原因分析

當(dāng)沒有設(shè)置好CPU的線程數(shù)時,Volatile GPU-Util參數(shù)是在反復(fù)的跳動的,0%,20%,70%,95%,0%。

這樣停息1-2 秒然后又重復(fù)起來。其實是GPU在等待數(shù)據(jù)從CPU傳輸過來,當(dāng)從總線傳輸?shù)紾PU之后,GPU逐漸起計算來,利用率會突然升高,但是GPU的算力很強(qiáng)大,0.5秒就基本能處理完數(shù)據(jù),所以利用率接下來又會降下去,等待下一個batch的傳入。

因此,這個GPU利用率瓶頸在內(nèi)存帶寬和內(nèi)存介質(zhì)上以及CPU的性能上面。

最好當(dāng)然就是換更好的四代或者更強(qiáng)大的內(nèi)存條,配合更好的CPU。

3.解決方法:

(1)為了提高利用率,首先要將num_workers(線程數(shù))設(shè)置得體,4,8,16是幾個常選的幾個參數(shù)。本人測試過,將num_workers設(shè)置的非常大,例如,24,32,等,其效率反而降低,因為模型需要將數(shù)據(jù)平均分配到幾個子線程去進(jìn)行預(yù)處理,分發(fā)等數(shù)據(jù)操作,設(shè)高了反而影響效率。當(dāng)然,線程數(shù)設(shè)置為1,是單個CPU來進(jìn)行數(shù)據(jù)的預(yù)處理和傳輸給GPU,效率也會低。其次,當(dāng)你的服務(wù)器或者電腦的內(nèi)存較大,性能較好的時候,建議打開pin_memory打開,就省掉了將數(shù)據(jù)從CPU傳入到緩存RAM里面,再給傳輸?shù)紾PU上;為True時是直接映射到GPU的相關(guān)內(nèi)存塊上,省掉了一點數(shù)據(jù)傳輸時間。

(2) 另外的一個方法是,在PyTorch這個框架里面,數(shù)據(jù)加載Dataloader上做更改和優(yōu)化,包括num_workers(線程數(shù)),pin_memory,會提升速度。解決好數(shù)據(jù)傳輸?shù)膸捚款i和GPU的運算效率低的問題。在TensorFlow下面,也有這個加載數(shù)據(jù)的設(shè)置。

(3) 修改代碼(我遇到的問題)

每個iteration 都寫文件了,這個就會導(dǎo)致cpu 一直運算,GPU 等待

造成GPU利用率低還有其他原因

1. CPU數(shù)據(jù)讀取更不上:讀到內(nèi)存+多線程+二進(jìn)制文件(比如tf record)

2. GPU溫度過高,使用功率太大:每次少用幾個GPU,降低功耗(但是多卡的作用何在?)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持本站。

香港服務(wù)器租用

版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。

相關(guān)文章

實時開通

自選配置、實時開通

免備案

全球線路精選!

全天候客戶服務(wù)

7x24全年不間斷在線

專屬顧問服務(wù)

1對1客戶咨詢顧問

在線
客服

在線客服:7*24小時在線

客服
熱線

400-630-3752
7*24小時客服服務(wù)熱線

關(guān)注
微信

關(guān)注官方微信
頂部