训练模型,内存、显存Out of memory问题

1.背景

最近尝试训练模型时,出现内存不足的问题,此外还遇到了显存不足的问题。
尝试一些常用方法,发现没用或用不了:

  1. 混合精度运算
    即半浮点数精度训练,首先试了apex这个库,结果发现没用,别的博客说pascal构架的显卡用不了,结果笔记本1050ti好像就是此构架。手动设置所有float()为half()类型,也还是不行。
  2. 降低批次batch
    已经为1了,还怎么降,索性去掉BN层,然后还是提示显存不足。
2.解决: 老老实实加条内存条 O(∩_∩)O

训练时就注意到,其实显存并没用占满,提示还有多少显存 free,但是却没法申请,而内存已经占了快80%多,或许是内存限制了。
显存->内存->磁盘

ref
windows上有如上共享关系,显存不够可以共享内存,内存不够可以共享磁盘(虚拟内存)。比如,任务管理器GPU上的如下信息,显存有4GB,共享了8G的内存给它,不够了可以先放内存里,一共拥有的可用内存为12G。
显存
此外,在加内存条时发现,C盘一下快被占满了,因为虚拟内存设置的自动调整,即“系统管理的大小”,结果自动调整到了16G,所以手动改一下就好。比如数据分析时装数据,如内存不够,就可以增大虚拟内存。
在这里插入图片描述

3.结论

熟悉下流程就行了,大的模型zz笔记不好耍。

关于内存条:加了根同三星厂,不同频率(2666、2400)的内存条,时不时就蓝屏。貌似多拔插几次、蓝屏了再来一次,总有一次能长时间不蓝……最后擦了下内存条的插口接触的地方、似乎中奖了,已经很久没蓝屏了。
所以,是玄学么

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值