CUDA的主要用途是深度学习,而目前主流的深度学习框架Tensorflow2最高支持CUDA 10.1,因此本文讲解在Ubuntu 20.04系统上安装CUDA 10.1的主要过程。

首先要查看你的NVIDIA显卡驱动是否支持cuda10.1版本。
在终端执行以下命令:

nvidia-smi
在这里插入图片描述

如果 CUDA Version: … 这里的版本号大于等于10.1(我的是10.2),就可以安装cuda10.1.

关键点:gcc降级

因为Ubuntu20.04自带的gcc版本为9.3,而cuda10.1不支持gcc-9,因此要手动安装gcc-7,命令如下:

sudo apt-get install gcc-7 g++-7

安装完gcc-7,系统中就存在两个版本的gcc,因此要设置默认的gcc,命令如下:

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 9
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 1

此命令可以通过update-alternatives设置gcc各版本的优先级,优先级最高的为系统默认版本,可以用下述命令显示其优先级:

sudo update-alternatives --display gcc

设置默认的g++也是如此:

sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 9
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-9 1

显示g++优先级:

sudo update-alternatives --display g++

按照官网的安装步骤下载并安装CUDA 10.1

CUDA Toolkit 10.1 update2 Archive

在这里插入图片描述

如上图所示,推荐选择run文件安装,比较简洁。

  1. 当安装界面启动,选择continue。
  2. 然后输入accept,回车。
  3. 由于你的系统中已经有了NVIDIA显卡驱动,如果不想安装CUDA 10.1中附带的驱动,移动到Driver选项上,按空格键将该项取消。如下图。
在这里插入图片描述

移动到Install选项,回车,等待安装完成。

配置可执行文件及库路径

安装完成后,需要为CUDA 10.1配置环境。

  1. 首先打开家目录下的.bashrc文件: gedit ~/.bashrc
  2. 在文件的末尾添加如下内容:
export PATH=/usr/local/cuda-10.1/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-10.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
  1. 保存并关闭文件,完成配置。
  2. 更新环境:source ~/.bashrc

安装cuDNN

下载cuDNN

Download cuDNN

打开链接后,网站会要求你登陆,如果没有NVIDIA账号,注册后再登陆。

在这里插入图片描述

选择与CUDA 10.1对应的版本(7.6.5),点开后选择 cuDNN Library for Linux,点击下载。(最好选择 cuDNN Library for Linux 这个文件格式安装比较方便)

在这里插入图片描述

安装cuDNN

切换到下载文件所在目录,解压下载好的cuDNN压缩文件到当前目录:

tar zxvf ./cudnn-10.1-linux-x64-v7.6.5.32.tgz -C ./

将解压出的

cuda/include/cudnn.h文件复制到/usr/local/cuda/include文件夹

cuda/lib64/下所有文件复制到/usr/local/cuda/lib64文件夹

为上述文件添加读取和执行权限:

sudo chmod 755 /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*

安装完毕