Ubuntu16.04下CUDA8.0和CUDA9.0共存

前言

在Github上有一些比较早的代码需要的环境可能是CUDA8.0,而对于一个新手来说,正常思维都会选择最现金的版本进行环境配置,在这里简单的介绍一下,如何在实用GPU进行运算的时候,CUDA8.0和CUDA9.0共存的问题。

1、安装前的检查

运行下面的指令,检查一下您的电脑当前CUDA版本

  nvcc --version 

我自己的电脑显示如下: (我的电脑里目前装的CUDA9.0)

Ubuntu16.04下CUDA8.0和CUDA9.0共存 Linux 第1张

2、下载合适的CUDA8.0版本

选择CUDA8.0版本的时候,一定要根据自己的电脑系统以及相应的环境选择,
在相应提供的下载链接的界面,按照如下所标注的内容进行:(我本人的是 Ubuntu服务器,16.04的,在这里我们选择runfile的安装形式)

Ubuntu16.04下CUDA8.0和CUDA9.0共存 Linux 第2张

Ubuntu16.04下CUDA8.0和CUDA9.0共存 Linux 第3张

Tips:由于我的是服务器端,所以如果有人也是在服务器端进行安装的话,记得要将刚才所下载的文件,先上传到服务器端。

3、进行相应的安装

在所下载相应的文件夹下,进行如下操作:

  cd CUDA8     # 进入包含上述下载文件的文件夹  sudo chmod 777 cuda_8.0.61_375.26_linux.run   ##给文件一定的权限  ./cuda_8.0.61_375.26_linux.run    ## 开始安装

运行安装指令之后,会出现Nvidia的介绍文档,例如下面所示:

Ubuntu16.04下CUDA8.0和CUDA9.0共存 Linux 第4张

重中之重的一点是,介绍文档需要你的一些操作,不然安装过程无法继续,有两个方法跳过介绍文档

  • 一路Enter,直到出现一些需要你输入Y 或 N的选项
  • 按Esc,退出介绍文档

当你跳过了介绍文档之后,接下来会出现一些需要你选择的选项:(每一步对应的输入都在下图中用红色的圆圈标注出来了,在这里解释一点:Driver一定要选择 n,因为你之前有装的支持CUDA9.0的驱动,所以就不用在装新的)

Ubuntu16.04下CUDA8.0和CUDA9.0共存 Linux 第5张

4、进行相应的环境配置

进入如下安装路径中,打开 bashrc 文件,然后定位到最低端 (操作过程见下图)

Ubuntu16.04下CUDA8.0和CUDA9.0共存 Linux 第6张

可以看到,在这里我的电脑端,导入的路径都是cuda9.0的:

Ubuntu16.04下CUDA8.0和CUDA9.0共存 Linux 第7张

在这里,我们要想实用刚才安装的CUDA8.0,我们只需要进行如下操作即可:
将相应的cuda-9.0换成cuda-8.0,如下图所示(保存之后退出)

Ubuntu16.04下CUDA8.0和CUDA9.0共存 Linux 第8张

然后在终端,执行下面指令进行source:

  source ~/.bashrc

Ubuntu16.04下CUDA8.0和CUDA9.0共存 Linux 第9张

接下来就可以进行相应的验证:(如下图所示,既可以看到,CUDA8.0版本安装成功)

Ubuntu16.04下CUDA8.0和CUDA9.0共存 Linux 第10张

5.多个 cuda 版本之间进行切换

上面讲述的,只是你想用其中的一个的情况,如果你经常想要进行版本切换,建议使用下面的方法:
将~/.bashrc 下与cuda相关的路径都改为 /usr/local/cuda/ 而不使用 /usr/local/cuda-8.0/ 或/usr/local/cuda-9.0/。

   #在切换cuda版本时    rm -rf /usr/local/cuda#删除之前创建的软链接    sudo ln -s /usr/local/cuda-8.0 /usr/local/cuda    nvcc --version #查看当前 cuda 版本        nvcc: NVIDIA (R) Cuda compiler driver    Copyright (c) 2005-2016 NVIDIA Corporation    Built on Mon_Jan_23_12:24:11_CST_2017    Cuda compilation tools, release 8.0, V8.0.62        #cuda8.0 切换到 cuda9.0     rm -rf /usr/local/cuda    sudo ln -s /usr/local/cuda-9.0 /usr/local/cuda    nvcc --version

对于~/.bahsrc文件的修改方法和上面一致。

6、总结

上文中只是说了,如何从CUDA9.0转换成CUDA8.0,如果你想换回CUDA9.0,只需要进行相反的过程,将 bashrc 文件里面的cuda-8.0换成cuda-9.0,然后source一下,即可。

到此这篇关于Ubuntu16.04下CUDA8.0和CUDA9.0共存 的文章就介绍到这了,更多相关CUDA8.0和CUDA9.0共存 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

参与评论