在pytorch中load模型,出现CUDA ERROR:out of memory,基本有下面三个原因:

CUDA显存不足

解决办法:换成显存更大的显卡

显卡被占用

当存在多个显卡时,pytorch默认使用0号显卡,当0号显卡被占用时,即使1号显卡空闲仍然会报错
解决办法:让其他显卡不可见,此时0号显卡为空余的1号显卡

import os

os.environ['CUDA_VISIBLE_DEVICE']='1'

模型保存GPU不同

使用cuda:0训练保存的模型,如果直接使用cuda:1去load,也会报错
解决办法:model.load_state_dict(torch.load('trained.pth', map_location={'cuda:0': 'cuda:1'}))

参考

相关文章:

  • 2022-01-14
  • 2021-10-07
  • 2022-01-13
  • 2022-12-23
  • 2021-06-16
  • 2021-09-13
  • 2021-11-06
  • 1970-01-01
猜你喜欢
  • 2021-08-09
  • 2022-12-23
  • 2021-06-17
  • 2021-10-30
  • 2021-11-22
  • 2021-05-09
  • 2022-12-23
相关资源
相似解决方案