RuntimeError: CUDA error: out of memory

写在前面( 已解决)

记录一下很诡异的情况,实验室两台同样的电脑做服务器,相同的代码在一直使用的机子上是 ok 的,移到另一台配置好的电脑就开始在 model=model.cuda()的地方报错

正式开始

下面是记录一下解决的经过
报错内容如下:

Traceback (most recent call last):
  File "/home/miniconda3/envs/xx/lib/python3.7/site-packages/torch/nn/modules/module.py", line 381, in _apply
    param_applied = fn(param)
  File "/home/miniconda3/envs/xx/lib/python3.7/site-packages/torch/nn/modules/module.py", line 463, in <lambda>
    return self._apply(lambda t: t.cuda(device))
RuntimeError: CUDA error: out of memory

对报错一共就这么多,因为没有到加载数据的部分,所以不存在 batchsize 太大的情况,有看到说是torch 和 cuda 版本不匹配,于是打印了一下两个环境

#这个是报错环境
(xx)user@a706-hp-z840-workstation:~$ python
Python 3.7.10 (default, Feb 26 2021, 18:47:35) 
[GCC 7.3.0] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.
import torch
torch.__version__
'1.7.0'
torch.version.cuda
'11.0'
torch.backends.cudnn.version()
8003
torch.cuda.is_available()
True
#这个是一直在用的老环境
(xx)user@ylw-HP-Z840-Workstation:~$ python
Python 3.7.8 | packaged by conda-forge | (default, Nov 27 2020, 19:24:58) 
[GCC 9.3.0] on linux  
Type "help", "copyright", "credits" or "license" for more information.
import torch
torch.__version__
'1.7.0'
torch.version.cuda
'11.0'
torch.backends.cudnn.version()
8003
torch.cuda.is_available()
True

所以看到的也就是 python 版本的差别,但也都是 3.7,torch 安装都一样,使用的 conda install pytorch==1.7.0
不知道什么原因,又在老环境里面试了一下完全没问题,而且老环境还在跑着代码也没有超内存

更新已解决

破案了是内存满了==
RuntimeError: CUDA error: out of memory_第1张图片

你可能感兴趣的:(Error,笔记,环境搭建)