深度学习多卡配置_RTX 3080深度学习环境配置
找资料的时候感觉现在写30XX系显卡深度学习环境配置的文章还不太完善,所以记录了自己的采坑经历。
Why?
下面这张图非常直观,TITAN性能比2080ti强,3080的CUDA核心数差不多是TITAN的两倍,内存少一些。目前3080显卡7000出头可以拿下,性价比非常不错。
1 准备工作
上半年配了台支持4GPU的机器,原计划下半年训练任务上来以后再加卡。但是30XX显卡出来以后,2个3080理论上和4个2080ti性能差不多,现在再加2080ti就非常不理智了。所以拆了2080ti,买了两个技嘉GeForce RTX™ 3080 GAMING OC 10G。
机器的硬件配置:
cpu:i9 10900x
主板:华硕PRIME X299-DELUXE Ⅱ
内存:16G * 4
电源:1600w
显卡:技嘉3080 GAMING O10G * 2
这套配置换3080有很多问题,性价比极低,不太推荐大家按照这个配置来买,有很多更合理的配置单可以参考。
2 环境配置
深度学习环境配置要多花点时间了解自己机器的情况,免得踩太多的坑。先去github上看看别人采的坑https://github.com/pytorch/pytorch/issues?q=is%3Aissue+is%3Aopen+30。
机器的环境:
操作系统:Ubuntu18.04
Nvidia Driver:455
Python:3.7
Pytorch:>= 1.7.0
cuda:11.1.1
cudnn:8.0.5
版本号很重要,一定要看清楚,选不对小版本就是在瞎折腾。
2.1 Nvidia驱动安装
2.1.1 下载驱动
驱动用官方推荐的455,对GTX3080、GTX3090做了适配。
官网地址:https://www.nvidia.com/download/driverResults.aspx/163522/en-us
# 查看GPUlspci -vnn | grep VGA# 安装官方推荐的驱动sudo ./NVIDIA-Linux-x86_64-455.23.04.run --no-x-check -no-nouveau-check -no-opengl-files
驱动安装这里no-x、no-opengl很重要。
安装好驱动以后reboot,查看驱动情况。
watch nvidia-smi
2.1.2 Tips
给Ubuntu装Nvidia的驱动每次都会把我制得服服帖帖的,记录显卡驱动的安装这里踩过的几个坑:
(1)ubuntu-drivers devices没有输出
以前安装2080ti驱动的时候很简单,更新系统,然后用ubuntu-drivers devices很简单就装上了。但是,3080插上以后,ubuntu-drivers devices没有输出。
开始我还以为是显卡没有插好,检查了很多次。后来用下面这个命令是可以看到显卡的。我想了一下应该是ubuntu还没有更新对30XX显卡的检测。所以官方直接下载驱动安装就好了。
lspci -vnn | grep VGA> 1a:00.0 VGA compatible controller [0300]: NVIDIA Corporation Device [10de:2206] (rev a1) (prog-if 00 [VGA controller])> 68:00.0 VGA compatible controller [0300]: NVIDIA Corporation Device [10de:2206] (rev a1) (prog-if 00 [VGA controller])
(2)没有关闭x、opengl
第一次安装驱动没有关闭x和opengl,安装失败。
sudo ./NVIDIA-Linux-x86_64-455.23.04.runs
2.2 cuda、cudnn安装
conda一键搞定
自己编译的cuda性能会好一些,不想折腾的话可以用conda安装。
conda install pytorch torchvision torchaudio cudatoolkit=11.0 -c pytorch-nightly
conda会自动给我们安装cuda和依赖库,等一会(这里等的时间和网速有比较大关系,我等了20分钟)就好了。
安装失败的话检查你的网络,速度太慢就去挂个VP*。
这里的cuda是11.0,和推荐的不一样,但是我运行挺正常的。如果有问题,欢迎大家指出来,我修正。
2.2.1 cuda 11.1
wget https://developer.download.nvidia.com/compute/cuda/11.1.0/local_installers/cuda_11.1.0_455.23.05_linux.runsudo sh cuda_11.1.0_455.23.05_linux.run
2.2.2 cudnn 8.0.5
这里我并没有看到有8.0.5版本的cudnn,只有8.0.4。很多人说8.0.4会安装失败,所以我用的是conda的一键安装。
https://developer.nvidia.com/rdp/cudnn-archive
2.3 Pytorch安装
pytorch一定要安装nightly版本。
pip install numpypip install --pre torch torchvision torchaudio -f https://download.pytorch.org/whl/nightly/cu110/torch_nightly.html
2.4 测试
放别人的一小段测试代码,看看有没有正常调用显卡进行训练。
import torchimport torch.nn as nnimport torch.optim as optimsize = 128class PayloadModel(nn.Module): def __init__(self): super().__init__() self.layers = nn.Sequential( \ *[nn.Conv1d(size, size, 1, 1, 0) for i in range(10)]) def forward(self, X): return self.layers(X)device = "cuda:0"model = PayloadModel().to(device)optimizer = optim.Adam(model.parameters(), lr = 5e-4)inputs = torch.randn(32, size, 256, device = device)targets = torch.randn(32, size, 256, device = device)loss = nn.MSELoss()for step in range(10000000): predicted = model(inputs) L = loss(predicted, targets) optimizer.zero_grad() L.backward() optimizer.step() print("%d steps, loss = %f" % (step, L.item()), end = "\r")
结束语
30XX显卡性能提升很多,性价比也不错,现阶段想配机器的同学这里不推荐买20系列。但是torch和tensorflow稳定版支持30XX显卡可能还需要一点时间,需要动手能力稍微强一点,网上写30xx的文章还不多,遇到问题先看看github,留言讨论也可以。
Reference
https://pytorch.org/
https://github.com/pytorch/pytorch/issues/47669
深度学习多卡配置_RTX 3080深度学习环境配置相关推荐
- Kinect开发学习笔记之(三)Kinect开发环境配置
Kinect开发学习笔记之(三)Kinect开发环境配置 zouxy09@qq.com http://blog.csdn.net/zouxy09 我的Kinect开发平台是: Win7 x86 + V ...
- Spring MVC 学习总结(一)——MVC概要与环境配置 转载自【张果】博客
Spring MVC 学习总结(一)--MVC概要与环境配置 目录 一.MVC概要 二.Spring MVC介绍 三.第一个Spring MVC 项目:Hello World 3.1.通过Maven新 ...
- cocos2d-x 学习笔记(1)关于cocos2d-x(环境配置,项目结构,文件说明)
cocos2d-x 学习笔记(1)关于cocos2d-x(环境配置,项目结构,文件说明) 1.问:什么是cocos2d-x? 是一套开放源代码,主要基于c,c++语言,针对windows,linux, ...
- 【深度之眼PyTorch框架班第五期】作业打卡01:PyTorch简介及环境配置;PyTorch基础数据结构——张量
文章目录 任务名称 任务简介 详细说明 作业 1. 安装anaconda,pycharm, CUDA+CuDNN(可选),虚拟环境,pytorch,并实现hello pytorch查看pytorch的 ...
- ROS学习(一)ROS Noetic安装及环境配置
文章目录 前言 0.ROS Installation Options 1.Installation 1.1 Configure your Ubuntu repositories 1.2 Setup y ...
- python html5游戏_10天制作html5游戏-卡坦岛-第一天,环境配置
卡坦岛是一款类似<文明>系列游戏的桌游,玩家要在由六边形组成的地图上发展自己的定居地与城市,以此累积胜利点,最先达到10点胜利点的玩家将获得游戏胜利.本系列专栏就将从零开始,在浏览器上实现 ...
- JAVA java学习(2)——————java下载安装与环境配置
1.java版本及安装 目前Java版本已经更新到15版本,但由于开发工具原因加上是初学者开发工具尽量选择集成开发工具,为了与集成开发工具配套这里以1.8版本为例即Java8,系统window7: ( ...
- 学习笔记Flink(五)—— Flink开发环境配置及运行实例(单词计数)
一.Intellij IDEA 环境配置 1.创建Maven工程 1.1.开发环境 Maven && JDK 1.2.Pom配置 Compiler Configuration 在pom ...
- SpringCloud学习笔记006---使用properties配置文件实现多环境配置
一.前言 实际项目开发过程中会用到多个环境,比如dev,test,product环境,不同的环境可能使用不同参数,为便于部署提高效率,本篇主要通过properties配置文件来实现多环境的配置. 二. ...
最新文章
- Apache源码包在LINUX(CENTOS6.8)中的安装(出现问题及解决)
- 重磅 | 王劲被百度起诉后首露面:称打印机电脑已报废,赔了318块钱,没接到法院传票
- jquery投色子动画
- 工业4.0提出者孔翰宁详解工业4.0
- abp mysql .net core_ABP Asp.Net Core 集成 MySql 数据库
- 计算机财务管理中表格的应用,excel在财务管理中的应用学习心得
- 上百所大学计算机考研有变化!22计算机考研太难了!
- Android 测试点归纳总结
- 京东商城java笔试_京东java笔试
- uni-app实现本地打包安卓APK
- JS 获取 元素 非行内样式
- 如何使用Transformers和Tokenizers从头开始训练新的语言模型
- 5本财富自由好书的精华
- html设置点击变换图标,【css】css实现点击Toggle功能/icon切换
- html 图片透明字不透明,CSS实现背景图片透明,文字不透明效果的两种方法
- 万能Markdown数学公式
- 塔顶放大器在移动通信网中的作用
- ffmpeg读取rtsp并保存到mp4文件
- 如何写好科研论文笔记 李玉军 清华大学 学堂在线课程
- CVS 常用操作命令