文章目录
我想吐槽的一点就是,CSDN环境真差,区区一个换源乱七八糟的抄,还是错的。
本文目标:装好torch、paddle深度学习环境。
选择的版本环境是 :最新的nvidia驱动、cuda 11.1 、cudnn v8.1.1,下面3.2节会说为啥这么选
1. Ubuntu20.04仓库换源
- 备份源列表
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
- 命令行打开sources.list文件
sudo gedit /etc/apt/sources.list
- 删除原有的内容,粘贴下面的内容,实现换源
deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
- 更新源、更新软件【等待时间较长】
sudo apt-get update
sudo apt-get upgrade
2. Anaconda安装以及conda、pip换国内源
这个步骤可以放在后面进行
2.1 Anaconda安装
详情参考Anaconda安装,具体不再列出
要注意的一点是,anaconda安装完成后,要先关闭那个命令行,再重新打开一个命令行,才可以进行conda操作
2.2 conda、pip换国内源
- pip换源
# 步骤1
mkdir ~/.pip
gedit ~/.pip/pip.conf
# 步骤2(填入以下内容)
[global]
index-url = http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host = mirrors.aliyun.com
# 步骤3
pip install update
- conda换源
换上清华源(有时候这个源很慢)
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 --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --set show_channel_urls yes
3. Nvidia驱动安装
3.1 安装步骤
你自己买的卡,应该知道是哪个型号的吧
-
进入nvidia官网,下 载 NVIDIA 驱 动 安 装 包 ( .run 格 式 ),型号别选错了
-
然后你自己找个地方建立一个文件夹,把这个文件放进去,看着不乱。你的可能不叫这个名字,因为我给它改过名了
-
禁用nouveau
sudo gedit /etc/modprobe.d/blacklist.conf
文件末尾添加以下语句:
blacklist nouveau blacklist lbm‐nouveau options nouveau modeset=0 alias nouveau off alias lbm‐nouveau off
更新
sudo update-initramfs -u
重启
reboot
打开终端检查nouveau是否被禁用,若执行完该句,终端没有任何输出,则nouveau被成功禁用
lsmod | grep nouveau
-
安装驱动
必须先安装gcc, 才能安装gpu驱动。
sudo apt-get install build-essential #gcc --version 验证gcc是否安装成功 sudo apt-get install g++ sudo apt-get install make
卸载旧驱动,如果从来没装过nvidia驱动,可以忽略
sudo apt-get remove --purge nvidia*
接下来,不要慌,会关闭图形界面,建议拿手机打开看
按下ctrl+alt+F3关闭图形界面(ctrl+alt+F1打开图形界面)
进取之后,输入你的账户、密码进行登陆
切换到放驱动的那个文件夹,此处以我的为例子cd nvidia_driver chmod +x nvidia.run # 安装驱动 sudo sh nvidia.run ‐‐no‐opengl-files
不好意思,盗的图。
步骤中,遇到32bit的选项,选no,其他都yes(PS我踩的坑:下的nvidia驱动版本太低,默认的gcc版本是9.4.0,那个驱动要gcc 9.3.0才能装。千万别折腾gcc,会疯的!!!换个高版本驱动,最新的,就不会出问题)reboot # 重启后 nvidia-smi # 即可看到,这就算驱动安装成功了
3.2 说明
这里简单说明一下驱动、cuda toolkits 、cudnn的一个关系,建议你看一下,虽然我也是外行
nvidia驱动版本可以通过 nvidia-smi
命令查看,我们可以看到驱动版本是515.48.07,这代表,他最高支持的CUDA版本是11.7,这是这个驱动支持CUDA工具包版本的上限。
现在我想要安装Paddle深度学习框架
因此我根据自己的配置,要选CUDA 11.1工具包以及cuDNN v8.1.1工具包,所以这里不要瞎配置
即使是Torch也是有要求的,下面是11.3,其实也有11.1的,找找历史版本就行。为了保证这两个框架我都能装上,选择了以下配置(30系显卡,一定要选择CUDA 11以上的版本)
NVIDIA驱动选 最高的,可支持到 CUDA 11.7
CUDA 选 11.1的
CUDNN 选 v8.1.1的
4. CUDA 11.1 安装
-
选择离线runfile安装,下面有命令
-
盗的图,因为不想再装了。只选第二个就行,啥都不选会报错。安装不上
-
接着
sudo gedit ~/.bashrc
# 末尾加入下面内容,版本要和你的对应起来,我这是11.1
export CUDA_HOME=/usr/local/cuda-11.1
export PATH=$PATH:/usr/local/cuda-11.1/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-11.1/lib64
#更新
source ~/.bashrc
- 安装成功,尝试
nvcc -V
,看到cuda 11.1就算成功了
5. CUDNN v8.1.1安装
-
下好,解压文件夹,执行命令,其实就完成了
sudo cp include/cudnn.h /usr/local/cuda/include sudo cp lib64/libcudnn* /usr/local/cuda/lib64 sudo chmod a+r /usr/local/cuda/include/cudnn.h sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
5. Torch与Paddle安装
- 创建环境
conda create -n Torch python=3.7
conda create -n Paddle python=3.7
-
按照官网给定信息,进行安装
# 进入Torch环境 conda activate Torch # 安装pytorch pip install torch==1.10.1+cu111 torchvision==0.11.2+cu111 torchaudio==0.10.1 -f https://download.pytorch.org/whl/torch_stable.html # 安装完后 python import torch torch.cuda.is_available()# 返回true安装成功
# 进入Paddle环境
conda activate Paddle
# 安装paddle
python -m pip install paddlepaddle-gpu==2.3.0.post111 -f https://www.paddlepaddle.org.cn/whl/linux/mkl/avx/stable.html
# 安装完后
python
import paddle
paddle.randn([])# 创建一个tensor不报错,就算成功
安装paddle2.3会有问题protobuf package to 3.20.x or lower.,按照提示解决即可
对应解决方案