引言:本文安装
CUDA
主要用于在GPU上训练深度学习模型,编程语言为Python,与C/C++不同,使用Anaconda
安装很方便,没有包管理的冲突。
Anaconda
,NVIDIA Driver
,即显卡驱动CUDA Toolkit
Linux的版本在官网上找合适版本的软件包,然后右键复制链接地址,通过wget
命令下载。
官网:https://repo.anaconda.com/archive/
这里我以2019年版本为例,我下载的是shell脚本(对应.sh文件)
wget https://repo.continuum.io/archive/Anaconda3-2019.07-Linux-x86_64.sh
执行该shell脚本,进行Anaconda的安装
sudo sh Anaconda3-2019.07-Linux-x86_64.sh
安装完毕后,查看镜像源
conda config --show channels
如果只有default,则需要修改channels添加国内清华镜像源以加速下载要安装的包
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/menpo/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes
首先检查系统是否有支持 CUDA 编程的 GPU,使用如下命令查看当前GPU的型号。系统版本为 CentOS 7.8,GPU 为 NVIDIA Tesla K80 (2个)
lspci | grep -i nvidia
yum install kernel-devel
注意需要保证内核版本和源码版本一致,否则会报错。
# 查看内核版本
ls /boot | grep vmlinu
# 查看源码版本
rpm -aq | grep kernel-devel
在官网中输入自己GPU相关信息和OS类型(比如我的设置如下),即可搜索出相应的NVIDIA Driver下载链接
官网:https://www.nvidia.cn/Download/index.aspx?lang=cn
然后在下载处,右键复制链接地址即可
wget http://cn.download.nvidia.com/tesla/450.51.06/NVIDIA-Linux-x86_64-450.51.06.run
dist-blacklist.conf
配置文件su root # 切换到root用户
vim /lib/modprobe.d/dist-blacklist.conf
# blacklist nvidiafb
然后添加以下语句:
blacklist nouveau
options nouveau modeset=0
mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak
dracut /boot/initramfs-$(uname -r).img $(uname -r)
systemctl set-default multi-user.target
reboot
查看nouveau是否已经禁用,若没显示相关内容则已禁用
ls mod | grep nouveau
chmod +x NVIDIA-Linux-x86_64-450.51.06.run
./NVIDIA-Linux-x86_64-450.51.06.run --kernel-source-path=/usr/src/kernels/3.10.0-1127.19.1.el7.x86_64/
安装成功后,使用如下命令可以看到安装好的驱动版本号(Driver Version)
nvidia-smi
这里只需要一路accept即可,很简单,需要花点时间
conda install -c anaconda cudatoolkit
Numba 是 Anaconda 自带的扩展库之一。在输入如下命令可查看硬件信息、操作系统信息、Python 版本、CUDA 版本信息。
numba -s
先查看conda list
中是否有已安装的torch
conda list | grep torch
若没有,则进行一步安装
conda install pytorch torchvision -c pytorch
在IPython中输入如下测试代码
import torch
torch.cuda.is_available()
【参考文献】:
[1] Centos7安装独立显卡驱动.
[2] 知乎.Linux 下的CUDA安装和使用指南.
[3] linux命令行下适配NVIDIA驱动.