http://geyao1995.com/CUDA8_CUDA9/
tensorflow1.5版本竟然不支持CUDA8.0了
卸载是不可能卸载的
1.原料准备
-
CUDA9.0下载:https://developer.nvidia.com/cuda-90-download-archive
建议选择使用
.run
文件安装,因为使用.deb
可能会将已经安装的较新的显卡驱动替换。 -
cuDNN7.0下载(需要注册账号,注意选择对应CUDA9.0的版本):https://developer.nvidia.com/cudnn
对于cuDNN7.0的安装方式选项,我选择的是cuDNN v7.0.5 Library for Linux,对应于
cudnn-9.0-linux-x64-v7.tgz
文件,解压之后放到cuda-9.0文件夹中就可以。 -
本机已经安装的版本是CUDA8.0和cuDNN5.1
2.打开菜谱
不去网上瞎找教程,参考官方文档
CUDA(看左上角是不是CUDA9.0版本的文档,如果显示最新版本,需要去找旧的9.0版本):https://docs.nvidia.com/cuda/archive/9.0/cuda-installation-guide-linux/index.html
cuDNN:https://docs.nvidia.com/deeplearning/sdk/cudnn-install/index.html#install-linux
3.下锅
1.安装新版本的CUDA和cuDNN
除了安装显卡选择no,还有一步要选择no(因为之前第一次安装cuda8.0,已经创建了/usr/local/cuda这个symbolic link,所以这里就没必要再创建一次了):
1
|
Do you want to install a symbolic link at /usr/local/cuda?
|
最后一步,安装CUDA 9.0 Samples也可以选no。
提醒:在第一次安装CUDA中,官方文档中重要的一步,在
~/.bashrc
文件中添加(对于64位系统):
1
2
3
如果是9.0版本CUDA,将8.0换为9.0。
安装好后,/usr/local/下面有三个文件夹:cuda-8.0、cuda-9.0、cuda(这个是软链接)
接下来加入cuDNN,注意这里cuDNN官方教程中给的是:
1
|
|
多版本情况下需要将cuda文件夹替换成cuda-9.0文件夹:
1
|
|
2.版本切换
把
~/.bashrc
下与cuda相关的路径都改为/usr/local/cuda/
而不使用/usr/local/cuda-8.0/
或/usr/local/cuda-9.0/
所以,此时~/.bashrc
中应该是:
1
|
export PATH=/usr/local/cuda/bin${PATH:+:${PATH}}
|
记住,cuda是symbolic link,所以想切换CUDA版本的时候只需要将cuda-8.0或cuda-9.0指向cuda就可以了。
刷新:
1
|
source ~/.bashrc
|
1.切换到CUDA9.0
1
|
rm -rf /usr/local/cuda #删除之前创建的软链接
|
2.切换到CUDA8.0
1
|
rm -rf /usr/local/cuda #删除之前创建的软链接
|
4.总结
- 本机安装好CUDA8.0+cuDNN5.1和CUDA9.0+cuDNN7.0。在/usr/local目录下两个文件夹cuda-8.0和cuda-9.0。
- 添加软链接cuda到PATH。
- 想用哪个版本的CUDA,就将哪个版本的CUDA链接到cuda。
5.其他方法
可以使用conda安装(未验证):
1
|
conda install -c anaconda cudatoolkit
|
或者用别的channel:
1
|
conda install -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/linux-64/ cudatoolkit=8.0
|
致谢
感谢维天大神提供的思路,要不然就买一台新电脑了!
参考
《安装多版本 cuda ,多版本之间切换》:https://blog.csdn.net/maple2014/article/details/78574275