Linux多版本CUDA安装及切换

2021-07-01
2 min read

1. Linux安装cuda

1. 下载CUDA

根据需要选择对应的CUDA Toolkit版本下载

选择自己对应的操作系统、结构、系统版本等之后,根据命令进行下载:

如果不知道对应信息可以通过第二点进行查看。推荐下载runfile,可以直接跳到第三点讲解如何安装。

2. 确认系统版本

选择对应系统的下载教程:

按照官方文档的指引,确认自己的系统和GPU是否满足条件。

1. 确认GPU

首先确认GPU是否支持CUDA,对照官方列表,通过以下命令查看自己的GPU:

lspci | grep -i nvidia

2. 确认Linux系统版本

通过以下命令查看自己的系统版本:

uname -m && cat /etc/*release

主要注意以上两个信息,对比文档中给出的表格:

3. 确认安装gcc

使用CUDA Toolkit进行开发需要gcc编译器,它通常是作为Linux安装的一部分安装的。可通过以下命令确认:

gcc --version

4. 确认系统有正确的内核头文件和正确的依赖包

文档给出不同Linux系统的安装命令,比如Ubuntu:

sudo apt-get install linux-headers-$(uname -r)

3. Runfile安装

下载好runfile文件之后,根据之前给出的指令进行安装:

sudo sh cuda_10.1.243_418.87.00_linux.run

4. 修改环境变量

下一节讲解如何通过软连接进行不同版本cuda之间的切换,在环境变量中只用指向一个软连接的文件夹cuda即可,首先编辑环境变量:

vim ~/.bashrc

在末尾添加:

export PATH=$PATH:/usr/local/cuda-10.0/bin
export CUDA_HOME=$CUDA_HOME:/usr/local/cuda

修改之后需要使环境变量生效:

source ~/.bashrc

5. 查看cuda安装状态

查看cuda-toolkit是否安装成功:

nvcc -V

查看显卡驱动运行情况:

nvidia-smi

2. Linux多版本cuda切换

当我们安装了多个版本的cuda时,可以将每个版本的cuda放在对应版本命名的文件夹cuda-x.x下,在建立一个CUDA的软连接,环境变量的路径直接指向CUDA的软连接,切换CUDA版本时只用删除当前的软连接,再指向需要版本的软连接即可。

1. 建立软连接

cuda一般安装在 /usr/local/路径下,首先进入该文件夹并建立一个空的cuda文件夹:

cd /usr/local
sudo mkdir cuda

然后建立软连接,以cuda-9.2为例:

sudo ln -s cuda-9.2 cuda

查看cuda文件夹下的version.txt文档,里面记录了cuda的版本信息:

cat  cuda/version.txt

可以通过stat命令查看当前的cuda信息:

stat cuda

2. 切换软连接

查看我们的所有的cuda版本,默认保存在/usr/local路径下:

cd /usr/local
ls

这里我安装有三个版本。可以更改symbolic link,使其指向其他版本的cuda,例如10.0:

rm -rf cuda
ln -s cuda-10.0 cuda

再次查看cuda版本和软连接情况:

看到已经切换到10.0版本的cuda了。