问题描述:
GLIP demo从T4卡的服务器上迁移到4090卡上,同样的docker镜像,同样的启动脚本,竟然报错了:
原因分析:
环境里的cuda版本是11.0,网上看到4090支持的cuda最低版本是11.8
尝试解决第一步:
升级cuda版本,安装cuda11.8
打开nvidia官网,找到安装命令:
wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run
sudo sh cuda_11.8.0_520.61.05_linux.run
安装时,不勾选‘driver’,按空格即可。安装好后,nvcc -V,检查是否安装成功。
启动服务,被催地发现,仍然报同样的错。
继续分析:
检查torch版本,是否torch版本和cuda不兼容导致。
环境中torch版本:1.9.1+cu102
对比该服务器上其它正常可用跑训练或推理的docker环境,发现 torch版本:1.9.1+cu111的运行正常。
尝试解决第二步:
更新torch版本:1.9.1+cu111
pip install torch==1.9.0+cu111 -f https://download.pytorch.org/whl/cu111/torch_stable.html
直接 pip install torch==1.9.0+cu111 ,是会报错的,需要加上后面的地址。
再次启动demo,无报错,问题解决。
最后
有一种可能,不需要升级cuda版本,直接更新torch版本就可以解决问题。时间原因,不做验证了。