Ubuntu20.04LTS 深度学习环境配置 CUDA11 + cuDNN8 + Tensorflow + Pytorch
本文最后更新于:1 年前
Introduction
Ubuntu的最新LTS版本也更新到了20.04,在给新机器配置深度学习环境的时候发现比以前容易了许多,特此写一篇Tutorial。这里的安装方法只针对Ubuntu20.04LTS,对于其他版本的系统可能不太适用。
Install GPU Drivers
这里假设安装系统之后已经做好了必要的配置(安装常用软件依赖、修改国内源等)。Ubuntu20.04中GPU驱动可以直接通过GUI界面安装,十分方便,方法是找到软件与更新 (Software & Updates),在附加驱动 (additional drivers) 选项卡中选择驱动版本,一般是选择“专有,tested” (proprietary, tested) 那个,之后点Apply Changes,重启。
如果是服务器的话,也可以采用命令行的安装方法。在命令行输入:
1 |
|
会列出驱动信息:
可以看到推荐驱动版本是455,直接使用命令ubuntu-drivers autoinstall
就可以自动安装推荐版本的驱动了。
Install CUDA & cuDNN
最常用的方式是按照官网的指导来安装CUDA,之后需要设置环境变量,在~/.bashrc
中添加下列指令:
1 |
|
还可以选择简单的方式,直接使用apt-get来安装CUDA:
1 |
|
不过这样会直接安装最新的CUDA版本,而PyTorch等深度学习框架不一定对最新的CUDA版本都有很好的支持,所以不推荐这种方式。
安装完CUDA之后输入nvcc --version
可以测试是否安装成功,输入nvidia-smi
可以看到GPU信息和CUDA版本。
之后安装cuDNN,进入官网,选择Download cuDNN:
会要求登录,如果没有账号的注册一个即可。在这里根据CUDA版本选择适合的cuDNN,我这里是CUDA10.2。我们选择deb包的方式安装,下载下图中圈出来的三个deb包,依次用sudo dpkg -i xxx.deb
命令安装。
Configure Python
为了更好地管理Python包和虚拟环境,我们需要安装Anaconda。使用Anaconda之后,我们可以创建虚拟环境,虚拟环境之间互不干扰。做科学实验我们一般需要安装大量的Python包,有的包之间甚至还有冲突,如果我们把他们都安装在同一个环境下就会难以管理,甚至出冲突。而有了虚拟环境之后,我们可以把不同需求放在不同虚拟环境中,比如深度学习开发放在一个虚拟环境中(安装Tensorflow等),网站开发放在一个虚拟环境中(安装Flask等)。Anaconda默认自带大量的包,不过我们一般会创建新的虚拟环境去安装新的包,所以这里我们选用Miniconda。Miniconda和Anaconda唯一的区别是不会自带大量Python包,这里大家自行选择。Anaconda国内镜像下载地址为:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/,Miniconda国内镜像下载地址为:https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/。
比如说我们下载的是Miniconda3-py38_4.8.2-Linux-x86_64.sh
,执行bash Miniconda3-py38_4.8.2-Linux-x86_64.sh
即可安装。显示一大屏用户协议哪儿按q
可以直接跳过,其他选项的默认的输入yes
即可。在提示是否需要conda init的时候记得输入yes
。
安装成功之后,重开一个终端,可以看到现在处于base
环境中:
我们先配置一下国内镜像,执行
1 |
|
然后粘贴下列文本使用清华源:
1 |
|
之后我们输入conda create -n <your_name>
创建一个新的虚拟环境,如果需要指定Python版本,则conda create --n <your_name> python=<python_version>
。之后输入conda activate <your_name>
进入虚拟环境,如果需要退出,则使用conda deactivate
。
安装常用包:
1 |
|
--yes
的作用是手动输入y
来确认是否安装,这里列出的是一些最常用的Python包,大家可以根据自己的需求自行调整。conda install
为Anaconda中安装Python包的方式。
Install PyTorch
这里来安装PyTorch环境,推荐使用conda create -n pytorch
创建一个专有虚拟环境,然后使用conda install
安装常用包。对于安装PyTorch,我们可以使用conda
也可以使用pip
安装。pip
是另外一个安装Python包的工具,由于不检查依赖所以比conda
安装速度快,而且包的数量比conda
多,使用也更广泛。同样pip
也可以使用国内镜像加速下载,详见https://mirrors.tuna.tsinghua.edu.cn/help/pypi/。
对于CUDA11.0,官方给出的用conda
安装PyTorch的命令(CUDA11.1也是这个)是:
1 |
|
用pip
安装PyTorch的命令是:
1 |
|
对于其他版本的CUDA安装命令可能不一样,可以去官网查看。
可以使用以下命令来测试GPU版本的PyTorch是否正常工作:
1 |
|
Install Tensorflow
安装Tensorflow环境同样推荐创建一个专有虚拟环境。对于Tensorflow2的安装,使用pip
十分方便,使用
1 |
|
即可。要安装其他版本的Tensorflow可以使用pip install tensorflow==<tf_version> tensorflow-gpu==<tf_version>
来指定版本。不过不同版本的Tensorflow要求的CUDA版本都有所不同,可以参考官网的说明。
可以使用以下命令来测试GPU版本的Tensorflow是否正常工作:
1 |
|
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!