ubuntu20.04+pytorch1.7(cuda10.2)+pycharm深度学习环境搭建

本文介绍在ubuntu20.04系统上安装pytorch,搭建深度学习开发环境的主要步骤。



一、gcc设置

  1. 为了使ubuntu20.04兼容cuda10.2以及对应的cudnn,首先安装gcc7,g++7
sudo apt-get install gcc-7 g++-7
  1. 查看gcc和g++版本
ls /usr/bin/gcc*

显示有7和9两个版本
在这里插入图片描述

ls /usr/bin/g++*

在这里插入图片描述3.设置默认编译器(使用update-alternatives进行版本切换)

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 100
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 50
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

4.查看此时的gcc默认版本

sudo update-alternatives --config gcc
sudo update-alternatives -- config g++

在这里插入图片描述

二、安装cuda

  1. 官网下载18.04对应的cuda10.2 runfile(local),链接:
    https://developer.nvidia.com/cuda-toolkit-archive

  2. 在文件所在文件夹下输入命令:

sudo sh cuda_10.2.89_440.33.01_linux.run

在这里插入图片描述3. 依次点击continue和accept

在这里插入图片描述
在这里插入图片描述4. 按回车取消Driver项的安装(使用系统自带的硬件驱动,对于cuda10.2而言,驱动版本大于440.00即可),然后回车选择Install
在这里插入图片描述
5. 添加环境变量
gedit ~/.bashrc打开文件,在文件结尾添加如下语句:

export PATH=/usr/local/cuda-10.2/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-10.2/lib64${LD-LIBRARY-PATH:+:${LD_LIBRARY_PATH}}

在这里插入图片描述6. 保存、更新环境变量

source ~/.bashrc
  1. 输入nvcc -V查看版本号

在这里插入图片描述cuda安装完成(注:使用nvidia-smi查看的硬件驱动版本查看的版本号(如cuda11.0)大于该运行时版本号时属正常情况)

三、安装cudnn

手动编译C++版本opencv且需要opencv_dnn_cuda,或许要使用tensorrt时必须安装(注意版本对应关系如tensorrt8.2.3要求cudnn8.2.1),仅使用pytorch在python环境下开发时可跳过也可视具体情况安装

  1. https://developer.nvidia.com/rdp/cudnn-download下载对应版本的cudnn
    runtime developer 和samples

  2. 在对应目录下依次输入

sudo dpkg -i libcudnn8_x.x.x-1+cudax.x_amd64.deb
sudo dpkg -i libcudnn8-dev_8.x.x.x-1+cudax.x_amd64.deb
sudo dpkg -i libcudnn8-samples_8.x.x.x-1+cudax.x_amd64.deb
  1. 测试
    拷贝例程到用户目录
cp -r /usr/src/cudnn_samples_v8/ $HOME
  1. 转到minist例程
cd  $HOME/cudnn_samples_v8/mnistCUDNN
  1. 编译例程
sudo make clean && make

如果出现fatal error: FreeImage.h 没有那个文件或目录
则需要执行:

sudo apt-get install libfreeimage3 libfreeimage-dev
  1. 运行例程
./mnistCUDNN
  1. 如果cudnn被恰当的安装,将输出打印消息:
    Test passed!

四、ssh安装和自启动(需要远程调试时可安装)

sudo apt-get install openssh-server
查看状态
sudo service ssh status

停止服务
sudo service ssh stop

启动服务
sduo service ssh start

设置开机自启动
sudo systemctl enable ssh
reboot

五、Anaconda安装


  1. https://www.anaconda.com/products/individual
    选择Linux 64-Bit(x86) installer下载.sh安装包
    在这里插入图片描述2. 在文件所在目录下输入命令安装
    在这里插入图片描述3. 配置环境变量
    gedit ~/.bashrc打开文件,检查末尾是否有如下语句:
    在这里插入图片描述==>如果没有:
    文件最后一行添加:
export PATH="/home/username/anaconda3/bin:$PATH"

保存关闭

  1. 更新环境变量
source ~/.bashrc

命令行最开始出现(base)标识
在这里插入图片描述

六、安装pytorch1.7

  1. 为了兼容更多的第三方包,conda中新建python3.7环境
    conda activate py37

  2. 添加conda国内源
    注意根据实际情况调整后缀linux-64

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/linux-64
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/linux-64
conda config --set show_channel_urls yes

第三方源

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/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/pytorch/

查看源

conda config --show-sources
  1. conda安装pyTorch1.7
    访问:
    https://pytorch.org/get-started/locally/

在这里插入图片描述激活py37环境:conda activate py37
运行网页给出的命令,去除最后的-c pytorch以使用国内源,否则安装速度较慢
在这里插入图片描述
4. 验证
py37环境下,输入python进入python环境
运行:

import torch
x = torch.rand(5, 3)
print(x)

输出类似:
在这里插入图片描述检查cuda是否可用

import torch
torch.cuda.is_available()
print(torch.version.cuda)
torch.rand(3, 3).cuda()

七、安装pycharm

  1. 官网下载open-source压缩包
    https://www.jetbrains.com/pycharm/download/#section=linux

  2. 解压缩进入bin目录,运行pycharm.sh

bash pycharm.sh

在这里插入图片描述
3. 根据弹窗提示完成安装
4. 创建快捷方式

cd /usr/share/applications
sudo gedit pycharm.desktop

添加以下内容:

[Desktop Entry]
Version=1.0
Type=Application
Name=Pycharm
Icon=/home/elbert/software/pycharm/pycharm-community-2020.2/bin/pycharm.png
Exec=sh /home/elbert/software/pycharm/pycharm-community-2020.2/bin/pycharm.sh
MimeType=application/x-py;
Name[en_US]=pycharm

注意,这里Icon和Exec的绝对路径,从bin目录中文件的属性里查看

win+A查看所有应用,找到对应的图标,然后右键添加到桌面收藏夹
在这里插入图片描述

八、pip添加国内源

后续开发过程中需要使用pip安装扩展包,添加国内源可以加快包的下载速度
常用国内源

• 阿里云
https://mirrors.aliyun.com/pypi/simple/
• 中国科技大学 
https://pypi.mirrors.ustc.edu.cn/simple/
• 豆瓣(douban) 
http://pypi.douban.com/simple/
• 清华大学 
https://pypi.tuna.tsinghua.edu.cn/simple/
• 中国科学技术大学 
http://pypi.mirrors.ustc.edu.cn/simple

检查是否有~/.pip/pip.conf,若无

mkdir ~/.pip
cd ~/.pip
touch pip.conf
sudo gedit pip.conf

添加一个国内源

[global]
trusted-host = pypi.tuna.tsinghua.edu.cn
index-url = https://pypi.tuna.tsinghua.edu.cn/simple

安装python版opencv(with contrib)示例:

pip install opencv-contrib-python

九、安装Tensorrt用于加速推理或部署

按需安装,这里需要注意和cuda还有cudnn的版本对应关系(cuda10.2版本需要下载补丁patch1和patch2都装一下,如果在后续测试中仍然报错,建议升级cuda11.x,cuda10.2似乎对新版tensorrt(新版本对算子等各方面支持好点)的支持不太好,无tensorrt需求则忽略此条!
在这里插入图片描述

下载链接:
https://developer.nvidia.com/nvidia-tensorrt-8x-download

从这里下载18.04对应的tar包 (deb包要求cuda也是deb安装)
解压压缩包

tar -xzvf TensorRT-8.2.3.0.Linux.x86_64-gnu.cuda-10.2.cudnn8.2.tar.gz

转到解压文件夹并列出文件

cd TensorRT-8.2.3.0.Linux.x86_64-gnu.cuda-10.2.cudnn8.2/TensorRT-8.2.3.0
ls

注意到有以下子文件夹
在这里插入图片描述
打开配置文件gedit ~/.bashrc将tensorrt库添加到环境变量,另外将tensorrt的更目录加入环境变量,方便后面调试例程

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$YOUR_ROOT_DIR/TensorRT-8.2.3.0.Linux.x86_64-gnu.cuda-10.2.cudnn8.2/TensorRT-8.2.3.0/lib

在这里插入图片描述

保存并关闭文件,刷新环境变量

source ~/.bashrc

安装python的TensorRT wheel文件

cd $YOUR_ROOT_DIR/TensorRT-8.2.3.0.Linux.x86_64-gnu.cuda-10.2.cudnn8.2/TensorRT-8.2.3.0/python

ls可以查看到文件内所有支持的不同的python版本
在这里插入图片描述
这里安装python3.8版本

python3 -m pip install tensorrt-8.2.3.0-cp38-none-linux_x86_64.whl

安装python uff的wheel文件,转到uff目录执行:

python3 -m pip install uff-0.6.9-py2.py3-none-any.whl

安装python graphsurgeon 的wheel文件,转到graphsurgeon目录执行:

python3 -m pip install graphsurgeon-0.4.5-py2.py3-none-any.whl

安装python onnx-graphsurgeon的wheel文件,转到onnx-graphsurgeon目录执行:

python3 -m pip install onnx_graphsurgeon-0.3.12-py2.py3-none-any.whl

验证是否安装成功
在这里插入图片描述
测试demo

cd samples/python/network_api_pytorch_mnist
python sample.py
  • 14
    点赞
  • 86
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值