当前位置:   article > 正文

【pytorch】随着epoch增加,显存逐渐增加?解决pytorch显存释放问题_epoch完成后部分gpu显存占用变大

epoch完成后部分gpu显存占用变大

训练时

在训练时,检测 “out of memory” 的error并通过torch.cuda.empty_cache()处理
如:

      try:
          outputs = net(inputs)
      except RuntimeError as exception:
          if "out of memory" in str(exception):
              print('WARNING: out of memory, will pass this')     
              torch.cuda.empty_cache()
              continue
          else:
              raise exception
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

测试时

在测试时,避免忘记设置 torch.no_grad()
如:

with torch.no_grad():
    inputs = None
    outputs = model(inputs)
  • 1
  • 2
  • 3

参考文献

Pytroch - 显存释放问题

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/127459
推荐阅读
相关标签
  

闽ICP备14008679号