找资料的时候感觉现在写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深度学习环境配置相关推荐

  1. Kinect开发学习笔记之(三)Kinect开发环境配置

    Kinect开发学习笔记之(三)Kinect开发环境配置 zouxy09@qq.com http://blog.csdn.net/zouxy09 我的Kinect开发平台是: Win7 x86 + V ...

  2. Spring MVC 学习总结(一)——MVC概要与环境配置 转载自【张果】博客

    Spring MVC 学习总结(一)--MVC概要与环境配置 目录 一.MVC概要 二.Spring MVC介绍 三.第一个Spring MVC 项目:Hello World 3.1.通过Maven新 ...

  3. cocos2d-x 学习笔记(1)关于cocos2d-x(环境配置,项目结构,文件说明)

    cocos2d-x 学习笔记(1)关于cocos2d-x(环境配置,项目结构,文件说明) 1.问:什么是cocos2d-x? 是一套开放源代码,主要基于c,c++语言,针对windows,linux, ...

  4. 【深度之眼PyTorch框架班第五期】作业打卡01:PyTorch简介及环境配置;PyTorch基础数据结构——张量

    文章目录 任务名称 任务简介 详细说明 作业 1. 安装anaconda,pycharm, CUDA+CuDNN(可选),虚拟环境,pytorch,并实现hello pytorch查看pytorch的 ...

  5. ROS学习(一)ROS Noetic安装及环境配置

    文章目录 前言 0.ROS Installation Options 1.Installation 1.1 Configure your Ubuntu repositories 1.2 Setup y ...

  6. python html5游戏_10天制作html5游戏-卡坦岛-第一天,环境配置

    卡坦岛是一款类似<文明>系列游戏的桌游,玩家要在由六边形组成的地图上发展自己的定居地与城市,以此累积胜利点,最先达到10点胜利点的玩家将获得游戏胜利.本系列专栏就将从零开始,在浏览器上实现 ...

  7. JAVA java学习(2)——————java下载安装与环境配置

    1.java版本及安装 目前Java版本已经更新到15版本,但由于开发工具原因加上是初学者开发工具尽量选择集成开发工具,为了与集成开发工具配套这里以1.8版本为例即Java8,系统window7: ( ...

  8. 学习笔记Flink(五)—— Flink开发环境配置及运行实例(单词计数)

    一.Intellij IDEA 环境配置 1.创建Maven工程 1.1.开发环境 Maven && JDK 1.2.Pom配置 Compiler Configuration 在pom ...

  9. SpringCloud学习笔记006---使用properties配置文件实现多环境配置

    一.前言 实际项目开发过程中会用到多个环境,比如dev,test,product环境,不同的环境可能使用不同参数,为便于部署提高效率,本篇主要通过properties配置文件来实现多环境的配置. 二. ...

最新文章

  1. Apache源码包在LINUX(CENTOS6.8)中的安装(出现问题及解决)
  2. 重磅 | 王劲被百度起诉后首露面:称打印机电脑已报废,赔了318块钱,没接到法院传票
  3. jquery投色子动画
  4. 工业4.0提出者孔翰宁详解工业4.0
  5. abp mysql .net core_ABP Asp.Net Core 集成 MySql 数据库
  6. 计算机财务管理中表格的应用,excel在财务管理中的应用学习心得
  7. 上百所大学计算机考研有变化!22计算机考研太难了!
  8. Android 测试点归纳总结
  9. 京东商城java笔试_京东java笔试
  10. uni-app实现本地打包安卓APK
  11. JS 获取 元素 非行内样式
  12. 如何使用Transformers和Tokenizers从头开始训练新的语言模型
  13. 5本财富自由好书的精华
  14. html设置点击变换图标,【css】css实现点击Toggle功能/icon切换
  15. html 图片透明字不透明,CSS实现背景图片透明,文字不透明效果的两种方法
  16. 万能Markdown数学公式
  17. 塔顶放大器在移动通信网中的作用
  18. ffmpeg读取rtsp并保存到mp4文件
  19. 如何写好科研论文笔记 李玉军 清华大学 学堂在线课程
  20. CVS 常用操作命令

热门文章

  1. 360互联网技术训练营第七期 -“遇见”PIKA
  2. python遗传算法有多慢_遗传算法框架GAFT优化小记
  3. gitlab mr wip 怎么弄成_基于GitLab的工作流程设计
  4. sap模块介绍_SAP系统如何快速上手?
  5. JVM面试1 :谈谈你对Java的理解
  6. goland 合并分支
  7. PHP 安全:如何防范用户上传 PHP 可执行文件
  8. 阿里云linux绑定域名
  9. VMware的宿主模式
  10. 计算机应用基础山东大学,山东大学计算机应用基础