最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Pytorch顯存管理

2023-08-14 10:25 作者:傑君  | 我要投稿

在模型訓練過程中,顯存的管理是需要注意的環(huán)節(jié),盡量用滿顯存在一定程度上可以縮短訓練時間,但過于貪心往往會遇到CUDA out of memory問題,鈔能力不足的情況下,可以嘗試一下手段來減少資源需求。

  1. 減少batch_size:這是最簡單有效的方法,減少一批讀取的數(shù)據(jù),從而減少顯存的使用量,但如果每個批次都需要重新讀取新的數(shù)據(jù)而不是固定死的,又沒辦法一次性讀取完數(shù)據(jù)集(比較少見這樣的需求,但我遇到了),就得嘗試其他的方法了。

  2. 勤使用torch.cuda.empty_cache():雖然python內(nèi)部也有資源管理機制,但有時候還是笨笨的,不能及時釋放資源,此時就需要我們調(diào)用該函數(shù)手動釋放。

  3. 減少線程使用num_workers:在dataloader中將會傳入該參數(shù),可以減少該參數(shù)值從而減少內(nèi)存使用。

  4. 使用混合精度:計算機中數(shù)據(jù)存儲的格式有許多種,此處舉個簡單例子如short int和int,之間就差距很大,pytorch中有torch.cuda.amp模塊可以來實現(xiàn)混合精度訓練,需要注意的是,該方法會存在精度損失,從而影響最終迭代結(jié)果,但因為一般情況下?lián)p失微乎其微,所以基本不會對結(jié)果產(chǎn)生影響,在這方面有需求的使用者慎重,下面是示例代碼:

最后如果以上方法都無法滿足,就需要從模型入手,深度可分離卷積是一個很好地降低模型參數(shù)的方法,當然優(yōu)化數(shù)據(jù)也是可以的,相信能做到這些的同學,也不需要我過多說明。

最后希望大家都有鈔能力能免受這種瑣碎之事的困擾。

Pytorch顯存管理的評論 (共 條)

分享到微博請遵守國家法律
开封市| 瑞金市| 玉林市| 师宗县| 武川县| 高要市| 汾西县| 荆门市| 德格县| 灵川县| 海阳市| 张北县| 饶阳县| 镇巴县| 务川| 丰原市| 建瓯市| 沁水县| 礼泉县| 白银市| 共和县| 金秀| 拜泉县| 芜湖市| 曲水县| 大田县| 西青区| 枞阳县| 汨罗市| 大荔县| 开封市| 石嘴山市| 邻水| 堆龙德庆县| 广安市| 柯坪县| 河东区| 潞城市| 永嘉县| 全南县| 高邑县|