尝试pytorch2.0

pytorch2.0,号称可以缩短训练时间30%到75%,着实让人感到兴奋。花了几个小时尝试2.0版本,中间发现一些问题,记录下来。

1.按照pytorch官方教程进行,我是cuda11.7,所以

 pip3 install numpy --pre torch torchvision torchaudio --force-reinstall --extra-index-url https://download.pytorch.org/whl/nightly/cu117

(一开始,用的 Mark Saroufim Blog的方法。安装不成功。)

2.安装成功后按照教程,改一下模型:

  for n in self.net_list:
      net = getattr(self,n)
      net.cuda(gpu_id)
      if config['using_PT2']:
         net = torch.compile(net,backend="inductor")
         # net_opt = torch.compile(net,backend="inductor")
      setattr(self,n,net)

官方说其inductor的backend是最优的。

3.编译,中间碰到报链接错误的-lcuda 无法找到。看了一下我的系统是ubuntu18.04,libcuda.so安装在/usr/local/cuda/lib64/stubs下。把libcuda.so 拷贝到/usr/local/lib下面,就好了。也尝试了修改/etc/ld.so.conf.d/下的,增加/usr/local/cuda/lib64/stubs/,但是会导致cuda库异常,nvidis-smi报错。

4.实际测试,可能我的模型比较复杂,实际测试只缩小了10%不到的训练时间。用的是rtx3090,单卡。跑的卷积神经网络。我的网络分成了不同的子模型。可能是这个的原因?不想改代码。就先这样吧。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值