高版本pytorch运行低版本pytorch常见问题汇总记录

自己的环境是 ubuntu20.04+cuda11.5+pytorch1.12.1,在git上下载一些古老的代码时,requirements.txt中的pytorch版本基本是0.4以下,因此总报错,这里记录一下常见的错误,方便下次查找。

1. Expected a ‘cuda’ device type for generator but found ‘cpu’

在加载dataloader时候遇到的这个错误

self.dataloader = DataLoader(
            dataset=self.dataset,
            batch_size=self.batchsize,
            shuffle=True,
            num_workers=4
        )


"""------------------>"""

self.dataloader = DataLoader(
            dataset=self.dataset,
            batch_size=self.batchsize,
            shuffle=True,
            num_workers=4,
            generator=torch.Generator(device='cuda')
        )

问题1的参考链接

2. cannot re-initialize CUDA in forked subprocess…

将上面修改了以后,又遇到了这个问题…醉了

num_workers = 0

问题2的参考链接

3. 多个cuda device的问题

要么是模型分布在多个cuda上,要么是tensor在多个device上
.cuda() 均修改成.to(device)

if config.n_gpu==1:
    self.G = self.G.to(device)
    self.D = self.D.to(device)
    # self.G = torch.nn.DataParallel(self.G).cuda(device=0)
    # self.D = torch.nn.DataParallel(self.D).cuda(device=0)

4. loss[0].item()

旧版本的很喜欢写这个,把0去掉,---> loss.item()

5. jupyter lab指定虚拟环境

# 第一步,切换到想要添加的虚拟环境:
conda activate pytorch1.7.0

# 第二步,安装ipykernel包
conda install ipykernel

# 第三部,执行如下命令,并确定环境的名称(此处设置为我需要的虚拟环境python37)
python -m ipykernel install --user --name pytorch1.7.0


  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值