主机回来以及,简单的环境配置(RTX3070+CUDA11.1+CUDNN+TensorRT)
紧接着前几天的事:
和
之后,决定买一台整机玩玩。
而现在,主机终于回!来!了!主机回来干什么,当然是——配置环境。
老潘之前也有一些配置环境的文章,可以参考:
- ubuntu16.04下安装NVIDIA(cuda)-gtx965m相关步骤以及问题
- pytorch-0.2成功调用GPU:ubuntu16.04,Nvidia驱动安装以及最新cuda9.0与cudnnV7.0配置
- win10下安装使用pytorch以及cuda9、cudnn7.0
- 安装cuda9.1内核问题:Unable to locate the kernel source
- 深度学习-在ubuntu16.04安装CUDA9.1-总结(问题完全解决方案)
- 关于在ubuntu上源码安装TensorFLow-1.7.0-cuda9.1-cudnn7.1.2过程中问题解决方案
-_-|| 没想到那会写了这么多配置环境的文章,可能那会遇到的问题比较多吧...配环境什么的,其实只要严格按照步骤来一步一步配,基本上不会出现什么问题,出现问题一般都是我们 某一步没有走对 ,而退回去再走 比较麻烦 而已。
而现在对于配环境来说可以是 轻车熟路 了(前几年不知道踩了多少坑,到现在都印象深刻),严格按照步骤来,安装Ubuntu和配置深度学习环境,1个小时多就搞定了。
接下来略微详细地讲一下过程。
- Windows下安装Ubuntu-18.04
- 配置深度学习环境(Cuda+Cudnn+Pytorch+TensorRT)
主机长这样
先放一组图吧。
晚上开机还挺炫的,但其实对于老潘来说炫不炫不重要,性能好就行...
主机配环境
主机回来店家只给我装了Windows系统,对于老潘来说, 打游戏是次要的 (哈哈哈哈...),忍住了先下载一个 鬼泣5
玩玩的想法。先从Ubuntu 官方 下载了官方的镜像包。
官方最新的Ubuntu是 20.10
,但对于搞事的人来说,还是18.04版本好一些(之前实验室用的是16.04)。
开始配置双系统,双系统是必须的,Ubuntu可以搞深度学习,也可以当服务器使,Windows则可以应付一些游戏和其他应急应用。
关于如何将下载好的Ubuntu系统镜像制作成U盘、如何安装,老潘这里不赘述了。可以看以下这篇文章,介绍的很详细,我就是按照这个严格来执行的:
当然如果有问题欢迎交流,直接留言即可~
安装过程
虽然不赘述了,但还是简单过一下:
进入BIOS,选择Ubuntu启动U盘,然后开始安装Ubuntu:
其他一路点点点,然后简单分个区。
然后开始安装...
等待半小时,装好了!
设置SSH
为什么要设置 ssh
,当然是想让这个Ubuntu充当一个服务器的作用,开启之后可以使用ssh登录去操作。
例如我,可以先把服务器开了,然后使用其他电脑,例如MAC,使用局域网通过SSH连接这个服务器即可。
怎么开启ssh呢?新的Ubuntu系统还没有安装SSH。
执行以下命令:
sudo apt install openssh-server sudo systemctl start ssh.service
然后可以通过 netstat -lnp | grep 22
查看下开启没。
如果想要每次启动自动开启SSH,可以这样:
sudo systemctl enable ssh
这样就差不多啦。
安装NVIDIA显卡驱动
默认Ubuntu安装的是 llvmpipe 这个显卡驱动,这个是linux下的公用显卡驱动,现在需要换成NVIDIA的。
首先禁用 nouveau 。
执行 sudo gedit /etc/modprobe.d/blacklist.conf
加上以下这两句:
blacklist nouveau options nouveau modest=0
保存后,然后执行:
sudo updata-initramfs -u sudo reboot
重启后, Ctrl+Alt+F1
切换到tty界面,关闭 lightdm (如果没有则不用管):
sudo service lightdm stop
然后更新一下apt源以及看一下系统推荐的NVIDIA驱动版本:
sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt-get update ubuntu-drivers devices
根据推荐的驱动版本,安装NVIDIA驱动:
sudo apt-get install nvidia-driver-460
如果嫌慢,可以添加阿里或者清华源:
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bcakup sudo gedit /etc/apt/sources.list
备份之后打开文件,添加以下源即可:
# 阿里云源 deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse ##測試版源 deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse # 源碼 deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse ##測試版源 deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse # 清华大学源 deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse ##測試版源 deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse # 源碼 deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse ##測試版源 deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
别忘了添加之后,进行更新二连:
sudo apt-get update sudo apt-get upgrade
这样就可以顺利的安装NVIDIA驱动了。
然后下载好以下 三个深度学习伴侣 :
开始安装吧!
安装Cuda、Cudnn
Cuda当然是必须要装的。
找到下载好的 11.1
cuda环境包(现在出来11.2了),然后执行:
sudo sh cuda_11.1.0_455.23.05_linux.run
会出来一堆blabla的选项:
- 1、确保你环境里头是否有旧的cuda,有的话建议删除
- 2、同意条款..
- 3、确认是否要安装驱动、安装demo...以及安装位置确定
- 4、开始安装ing
对于老潘来说,上一步中已经安装了cuda驱动,不需要再装旧版的(新版驱动兼容旧版驱动匹配的cuda),所以这里就把 驱动选项去掉 ,其他的安装按照我的需求按部就班来就好。
注意
如果你没有root权限,无法使用 sudo
,想要安装cuda也是可以的。只要自定义好安装位置即可,运行如下命令即可将cuda安装到当前home下的software文件夹内:
./cuda_11.1.0_455.23.05_linux.run --silent --toolkit --toolkitpath=$HOME/software/cuda --defaultroot=$HOME/software/cuda
不论咋样安装好之后会显示:
按照上面的要求配置环境变量即可:
(base) [email protected]:~/software$ vim ~/.bashrc 将 export PATH=/usr/local/cuda-11.1/bin:$PATH export LD_LIBRARY_PATH=/usr/local/cuda-11.1/lib64:$LD_LIBRARY_PATH 添加到打开的文件中 (base) [email protected]:~/software$ source ~/.bashrc (base) [email protected]:~/software$ nvcc -V nvcc: NVIDIA (R) Cuda compiler driver Copyright (c) 2005-2020 NVIDIA Corporation Built on Tue_Sep_15_19:10:02_PDT_2020 Cuda compilation tools, release 11.1, V11.1.74 Build cuda_11.1.TC455_06.29069683_0
Cudnn
cudnn的安装就比较简单了,解决压缩包然后复制粘贴就行:
tar -xzvf cudnn-11.2-linux-x64-v8.1.1.33.tgz sudo cp cuda/include/cudnn.h /usr/local/cuda/include sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64 sudo chmod a+r /usr/local/cuda/include/cudnn.h
安装Anaconda
安装Anaconda也很简单,从 这里 下载好(不想下的看老潘整理文末的软件包):
然后 sh Anaconda3-2020.11-Linux-x86_64.sh
就行。
安装好之后,配置conda以及pip清华源,参考以下文字即可:
安装Pytorch
安装Pytorch就比较简单了,如果不想自己编译,直接从官方按照你的Cuda版本和Cudnn版本安装即可:
https://download.pytorch.org/...
安装好Pytorch之后,测试一下 cuda 是否工作正常:
>>> import torch >>> torch.cuda.is_available() True >>> torch.ones(1).cuda() tensor([1.], device='cuda:0') >>> torch.cudnn_is_acceptable(torch.ones(1).cuda()) True
OK~
TensorRT
TensorRT单独发一篇文章来说吧~
一些资源
配环境需要很多 软件包 ,例如:
- Anaconda
- Pytorch.whl
- TensorRT
- CUDA
- CUDNN
有些可以在 清华大学开源软件镜像站 下载,但是TensorRT和CUDA、CUDNN需要从官方下而且需要注册而且很慢。
老潘整理了一些已经下载好的软件包。
公众号内回复 015
获取,可以看看有没有你需要的:
想写的还有很多,下篇再讲(呼呼)。
如果有问题欢迎留言,欢迎关注「oldpan博客」公众号,老潘的全部家当都在这里了。很愿意与你交朋友~
参考
撩我吧
- 如果你与我志同道合于此,老潘很愿意与你交流;
- 如果你喜欢老潘的内容,欢迎关注和支持。
- 如果你喜欢我的文章,希望点赞:+1: 收藏 :file_folder: 评论 :speech_balloon: 三连一下~
想知道老潘是如何学习踩坑的,想与我交流问题~请关注公众号「 oldpan博客 」。
老潘也会整理一些自己的私藏,希望能帮助到大家,点击 神秘传送门 获取。
- API 文档简洁之美,只需三步开启
- Kotlin 和 Jetpack 视频合集 | MAD Skills
- 实战 Java 16 值类型 Record - 1. Record 的默认方法使用以及基于预编译生成相关字节码的底层实现
- 优先使用 KTX 库 | MAD Skills
- 实操搭建企业级Harbor v1.10.6
- 推荐一个开源文件管理系统,简单好用
- 一文搞懂MySQL体系架构!!
- 使用Documentfragment优化DOM操作
- 深入理解浏览器缓存机制
- 百度搜索与推荐引擎的云原生改造 | Geek大咖说第一期
- 聊聊LiteOS事件模块的结构体、初始化及常用操作
- 从零搭建自己的社区系统,这个开源项目值得拥有
- 茫茫内存,我该如何用 windbg 找到你 ?
- Java中对象的生与灭- 核心篇
- 使用JavaScript学习设计模式
- 一文带你剖析LiteOS互斥锁Mutex源代码
- 小胖问我:MySQL 事务与 MVCC 原理?
- 免费正版 IntelliJ IDEA license 详细指南
- 纯函数是什么?怎么合理运用纯函数?
- 聊聊dddsample-core的Specification