DeBug Record——Pytorch设置默认CUDA不是0号
Pytorch设置默认CUDA不是0号
重新整理
返回来看自己之前的这篇文章,感觉写的逻辑太混乱了,回来简化一下。原先的版本留在文章结尾。
问题
Pytorch的版本是1.2.0,不知道现在改了没。
我希望能够只调用3号GPU,但是在用Pytorch库调用GPU时,使用以下代码,都会占用一些0号GPU显存:
# 版本一
with torch.cuda.device(3):
main(opt)
# 版本二 设置环境变量(并没起作用,当时Pytorch版本为1.2.0)
import torch
import os
os.environ['CUDA_VISIBLE_DEVICES']='3'
解决方案
两种方案:
CUDA_VISIBLE_DEVICES=3 python script.py
或者
import os
os.environ['CUDA_VISIBLE_DEVICES']='3'
# 在torch之前设置好环境变量
import torch
原先的版本
问题说明
实验室服务器有4个GPU,同学用了0号,0号显存基本占满,剩余3个GPU,在代码里只使用了CUDA:3,但是cuda总是说memory不足。
报错: