关注&置顶“Charlotte数据挖掘”
每日9:00,干货速递!
不知道大家在训练深度学习模型时有没有遇见过这种情况:设置的batch_size明明不大,譬如32或者16,但是怎么一跑模型,GPU的显存就占满了呢?原来我使用Tensorflow的训练的时候发现是这样,后来我使用PaddlePaddle的时候也是这样,我以为是框架本身出了问题,但是仔细研究后才发现,其实这两种框架都是在跑模型的时候,默认设置会把你的GPU显存占满,需要手动去调整。具体如何优化呢,我把两个框架的优化方式都分享给大家~
Tensorflow的显存设置
1.设置指定GPU运行
a)在外部设置
如果电脑有多个GPU,tensorflow默认全部使用。如果想只使用部分GPU,可以设置CUDA_VISIBLE_DEVICES即可,如下:
CUDA_VISIBLE_DEVICES=1 python train.py
b)在python内部设置制定GPU
import osos.environ["CUDA_VISIBLE_DEVICES"] = "1"

本文介绍了在Tensorflow和PaddlePaddle中遇到GPU显存不足的问题时,如何进行优化。包括Tensorflow的GPU指定与显存大小设置,以及PaddlePaddle的显存预分配、GC策略和Inplace策略。建议设置如:预分配显存池、开启GC和Inplace策略等。
最低0.47元/天 解锁文章
1853

被折叠的 条评论
为什么被折叠?



