自己用cuda8.0安装了pytorch,然后发现服务器的cuda版本为10.0.130,二者不匹配(安装版本与服务器版本不一致),使用时出现:torch.cuda.is_avaliable()=False,因此需要更新安装cuda版本,使其与服务器版本一致,再重新安装pytorch。同时需要注意NVIDIA驱动也要更新,否则无法正常使用。
一、关闭X文件
NVIDIA驱动的更新要求关闭X文件,操作如下:
- 进入管理员模式
重新打开一个纯命令窗口,切换到管理员账号下:su 账号:XXX 密码:XXX - 关闭X锁文件和文件夹
sudo init 3 # 注意空格
rm /tmp/.X*
rm -rf /tmp/.X* - 重启服务器
reboot
二、更新cuda版本10.0.130,保留cuda8.0,建立软连接
- 下载安装包
cuda下载地址
选择与自己系统对应版本的安装包 - 安装
mkdir cuda_10.0 #用于放置cuda10.0安装文件 和Samples
sudo sh cuda_10.0.130_410.48_linux.run
会出现很多提示信息,可以按空格键跳过,直到more达到100%
安装选项:
记得在安装驱动和软连接的地方选择yes!!!
- 修改配置文件
vim ~/.bashrc
键盘输入G #vim一般模式转为命令模式,光标至文件最后一行首字母处
键盘输入I #换成插入模式,修改文件
在文件最后一行添加:
键盘按ESC #从命令模式回到一般模式
命令行输入:wq #保存文件修改并退出
source ~/.bashrc #更新配置文件 - 建立软连接
sudo ln -s /usr/local/cuda-10.0 /usr/local/cuda
若要修改软连接:(如与cuda8.0连接)
sudo rm -rf /usr/local/cuda
sudo ln -s /usr/local/cuda-8.0 /usr/local/cuda #一定要先删除现有连接,再重新连接 - 查看版本
查看cuda版本:nvcc –version
查看驱动版本:nvidia-smi
(若左右版本号一致,则驱动更新成功)
三、安装cudnn
- 下载安装包
cudnn下载地址
- 解压文件
cp cudnn-8.0-linux-x64-v5.1.solitairetheme8 cudnn-8.0-linux-x64-v5.1.tgz
tar -xvf cudnn-8.0-linux-x64-v5.1.tgz - 更新cuda中的cudnn文件
#将cudnn解压后的文件夹cuda中的文件拷贝至刚刚安装的/usr/local/cuda下
sudo cp cuda/include/.h /usr/local/cuda/include/
sudo cp cuda/lib64/lib /usr/local/cuda/lib64/ - 创建软连接
cd /usr/local/cuda/lib64/
sudo rm -rf libcudnn.so libcudnn.so.7 #删除
sudo ln -s libcudnn.so.7.6.0 libcudnn.so.7 #链接
sudo ln -s libcudnn.so.7 libcudnn.so
sudo ldconfig - 查看cudnn版本
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2