1.背景
最近尝试训练模型时,出现内存不足的问题,此外还遇到了显存不足的问题。
尝试一些常用方法,发现没用或用不了:
- 混合精度运算
即半浮点数精度训练,首先试了apex这个库,结果发现没用,别的博客说pascal构架的显卡用不了,结果笔记本1050ti好像就是此构架。手动设置所有float()为half()类型,也还是不行。- 降低批次batch
已经为1了,还怎么降,索性去掉BN层,然后还是提示显存不足。
2.解决: 老老实实加条内存条 O(∩_∩)O
训练时就注意到,其实显存并没用占满,提示还有多少显存 free,但是却没法申请,而内存已经占了快80%多,或许是内存限制了。
显存->内存->磁盘
ref
windows上有如上共享关系,显存