大纲

  • 概述
  • 关于查看的方法
    • 查看显卡型号
    • 查看驱动版本
    • 查看CUDA版本
    • 查看显卡状态
  • 更新/下载显卡驱动(如果有需要)
  • 更新/下载CUDA
    • CUDA版本选择
    • CUDA安装
      • 安装成功检验
  • cuDNN安装
  • GPU版本的pytorch安装
  • GPU版本的tensorflow安装

概述

  • 要想使用DGL需要基于后端,这里选择pytorch作为后端(其它的比如说有tensorflow)。要想使用PyTorch可以选择GPU和CPU两个版本,这里按照GPU来安装。 要想安装GPU版本的PyTorch需要安装CUDA。要想安装CUDA需要选择和显卡驱动兼容的版本。

  • CUDA(Compute Unified Device Architecture)是NVIDIA推出的并行计算框架,只有安装这个框架我们的GPU才能够被调用来进行复杂的并行计算。 PyTorch 是位于最顶层的深度学习框架, GPU 是底层硬件,而硬件与深度学习框架之间 “ 语言不通 ” —— GPU不能直接识别 PyTorch 的代码和指令,它需要二进制代码指令。

  • 所以在GPU与PyTorch之间,我们需要能够转换指令、传递数据的接口——CUDA和显卡驱动。CUDA 是上层应用程序的接口,它的职责就是将我们在PyTorch中编写好的程序信息(比如让GPU内部开多少个线程来算,怎么算之类的)整理出来,传递到底层硬件的接口,也就是显卡驱动那里。每当显卡驱动收到 CUDA 发来的指令后,它对CUDA程序进行编译,再将命令以及编译好的程序数据传送给 GPU,这样GPU就可以进行运算了。

  • 所以在这个过程中,CUDA需要与PyTorch互通,也需要与显卡驱动互通,而显卡驱动需要与GPU互通,这种“互通”就是我们常常说到的“兼容”。如果不兼容,那PyTorch就无法顺利调 GPU。正因如此,许多 PyTorch的GPU版本安装教程中,都会让大家查询显卡对应的驱动版本,然后再根据显卡驱动版本配置相应版本的CUDA 。了解了 CUDA 、显卡驱动、显卡以及 PyTorch 的关系之后,我们可以来进行安装了。如果GPU是10代之后(GTX 10XX,RTX系列等),应该使用最新版本的CUDA。

  • 【安装路线】:确保有硬件GPU——根据GPU型号安装兼容版本的GPU驱动——根据GPU驱动安装兼容版本的CUDA——根据CUDA安装兼容版本的pytorch/tensorflow

  • 【实际上确定版本的路线应该是反着的】: 确定要使用的库包(tensorflow/pytorch)版本——根据库包版本确定能兼容的CUDA版本——根据CUDA版本确定能兼容的GPU驱动版本

关于查看的方法

“——如何查看有无,有的话又是什么版本”

查看显卡型号

  • 右键电脑点击管理——打开设备管理器——显示适配器——英伟达显卡型号
  • 如果显示有叹号,说明驱动有问题,需要重新下载驱动

查看驱动版本

  • 同样在电脑右键管理——设备管理器——显示适配器,多了一步点击显卡——驱动程序

查看CUDA版本

点击开始——输入cmd——输入指令nvcc -V

查看显卡状态

点击开始-输入cmd-输入指令nvidia-smi
nvidia-smi输出内容释义及使用

  • 注意这里也能显示当前的驱动版本,但是后面的CUDA却不是当前的CUDA实际版本,而是驱动所支持的最高版本

更新/下载显卡驱动(如果有需要)

驱动一般都会有,但就是老旧之分,越新的驱动支持的CUDA版本越高,同时新驱动向下兼容,也就是说新驱动也支持原来的旧版CUDA,也就是说新驱动大大滴好

  • 进入英伟达官网驱动页面https://www.nvidia.com/Download/index.aspx填入你的系统信息和显卡信息等,下载最适合的显卡驱动。(需要注意的是,如果你的GPU只用于深度学习,选择Studio Driver版本会相对更稳定,但是有的显卡可能只有GRD,搜SD搜不出来,也无所吊谓)
  • 下载后双击exe文件进行安装(如果你之前的驱动没有卸载干净的话,可以选择高级自定义模式,勾选上清洁安装可以把之前的驱动直接清除干净——我默认安装的C盘空间反而变大了貌似)
  • 更新完毕之后,进入你的NVIDIA控制面板,查看现有的驱动程序版本。1




参考博文一:显卡驱动如何卸载重装?NVIDIA独立显卡驱动卸载重装的方法
参考博文二:PyTorch(CPU版本及GPU版本)的安装及环境配置
参考博文三:深度学习安装笔记(二)显卡、显卡驱动、CUDA 的关系以及显卡驱动升级

更新/下载CUDA

CUDA版本选择

  • 打开cmd输入指令nvidia-smi,查看有关显卡驱动的信息。我们可以直接得到驱动版本512.15和可安装的最高版本CUDA11.6,当然安装较低版本的CUDA也是可以的。
  • 我们也可以拿着驱动的版本信息512.15,去英伟达官网里面的CUDA文档发行说明 CUDA Documentation/Release Notes中【打开后往下划划】,找到兼容自己显卡驱动版本的CUDA(可以安装低一点版本的CUDA,表格含义是某版本CUDA所需要的最低显卡驱动。
  • 如果你想安装高版本CUDA,但是显卡驱动版本比较旧不足以支持,可以去回到上一步更新驱动——可能很老的显卡也能更新比较高版本的驱动,同样地就可以用高版本CUDA了
  • 进入以前 CUDA 版本的存档 Archive of Previous CUDA Releases,找到自己适合的版本进行下载(建议安装较高版本:虽然不同库对CUDA版本的依赖会有区别, 但是总之CUDA版本越高越好, 低版本的CUDA早晚会被淘汰2
    -
    -

CUDA安装

  • 确定好兼容显卡驱动的CUDA版本
  • 安装完CUDA之后,想选择最新版pytorch,恰好pytorch官网推荐的CUDA11.3兼容我的驱动
  • 进入CUDA官网,映入眼帘的是最新版本,右下角有之前旧版本的链接,跟我自己需要的版本进行下载

遇到问题可以看下这个博主的CUDA安装问题汇总

安装工作
注意打开后先让你选择的路径是临时解压路径,安装完会删除的,所以要与你选择的安装路径区分开,否则你就会发现明明安装成功了但是莫名其妙被删了!
参考博文CUDA程序安装失败原因及解决方案

参考博文CUDA | CUDA10.2的安装——2020-05-21
安装过程中选择自定义,可以好安装一些没必要的,如图我已经有比他版本不还要高的组件了,就选择性的不安装




可以选择自定义安装,根据自己的情况有些组件可以不安装

安装成功检验

见博客CUDA | CUDA10.2的安装——2020-05-21(注意是bandwidthTest.exe

卸载CUDA
bandwidthTest.exe

cuDNN安装

查看适配的 cuDNN
https://developer.nvidia.com/rdp/cudnn-archive

官方安装指南https://docs.nvidia.com/deeplearning/cudnn/install-guide/index.html#installwindows
其他人经验https://blog.csdn.net/anmin8888/article/details/127910084
二者结合着看

GPU版本的pytorch安装

  • 使用离线方式下载所需要的库包

下载离线库的方法
安装离线库的方法

  • 使用在线指令方式下载
  • 去pytorch官网,会直接看到最新版本pytorch,注意看指令中有cudatoolkit=11.3,说明会顺带给安装上11.3版本的CUDA
  • 由于之前我们下载了11.1版本的CUDA,我们这里点击之前版本的pytorch,发现对应CUDA11.1的话只有pip指令(无conda指令)可以操作,选择最新的1.10.1版本pytorch
  • 这时候坑爹的来了,之前用conda指令安装库包一直没问题,这里使用了pip指令,那么问题来了,下载的库包居然在C盘,还报红。
  • 有原因说是调用的pip这个包默认使用的c盘python的pip,但是我用where pip查询发现我只在D盘额外按了一个python有pip,其余的就是每个环境中的pip了(环境统统在D盘,包括base环境)。
  • 我的anaconda prompt打开后默认路径是用户路径(c盘),因为conda指令加入了环境变量,所以在c盘路径下使用conda指令系统也可以识别到我是要把库包安装在D盘,但pip指令只认当下是在哪个路径下发出的pip指令,显然一直是在c盘路径下操作,所以使用上述pip下载pytorch,我就眼睁睁的看着c盘一点点变小,并且,还特么变红报错了。
  • 修改了anaconda prompt 的默认打开路径之后,python安装在别的盘使用pip安装第三方的库
  • 好吧,出错之后应该直接搜问题,不应该自己瞎猜,还总是怀疑调用的pip把库包下载安装到C盘了。其实memory error 的意思表明pip是把文件默认缓存到c盘,但是因为文件过大超过了c盘的缓存大小限制。。。pip install时遇到MemoryError的原因和处理方法
  • –default-timeout=1000
  • 解决了mermory error巨坑又出现了。首先我们需要知道torch和torch versiontorch和torch audio之间也存在对应关系(对应关系的网址点击代码块即可跳转)。对于我要下载的兼容CUDA11.1版本torch1.10.1版本,经查torch1.10.1需要对应torch version0.11.2,无对应torch audio,官网给的命令pip install torch==1.10.0+cu111 torchvision==0.11.0+cu111 torchaudio==0.10.0 -f https://download.pytorch.org/whl/torch_stable.html中,让下载的torch verison和torch audio并不匹配(推断命令是错误的)
  • 即使命令是对的,运行出来也会爆红显示,torch1.10.1下载没问题完成了,但在下载torch version1.11.0时显示搜索不到,经查只有linux版本(官网明明写了命令适用于linux和win)
  • 下一步怎么办呢?已经不想卸载安装好的CUDA11.1了反正,就一个个找吧,从torch version和torch audio找起。

GPU版本的tensorflow安装

版本兼容网址


  1. PyTorch(CPU版本及GPU版本)的安装及环境配置 ↩︎

  2. 【学习笔记】图神经网络库 DGL 入门教程(backend pytorch) ↩︎

CUDA+pytorch+DGL安装相关推荐

  1. 【Anaconda+Pytorch+DGL】安装+配置详细过程

    文章目录 Anaconda安装 1.进入[Anaconda官网](https://www.anaconda.com/)下载,下载完成后安装指令默认直到完成安装. 2.进入Anaconda Prompt ...

  2. Linux显卡驱动|CUDA卸载和安装|pytorch安装

    Linux显卡驱动安装 很简单,参考如下流程,很详细! Ubuntu安装显卡驱动详细步骤:https://blog.csdn.net/m0_54792870/article/details/11298 ...

  3. win10 GTX1060 安装CUDA+PyTorch GPU

    1.说明 其他博客已经讲得很详细了,但是或多或少会有些问题,我自己安装了一遍 发下了如下的一些注意事项,想安装的同学们注意了. 假设你已经安装好了anaconda 和py37. 2.CUDA和 cud ...

  4. Pytorch(gpu),cuda,cudnn安装

    Pytorch(gpu),cuda,cudnn安装 第一步:查看自己电脑显卡支持的CUDA版本 第二步:查看pytorch对应cuda版本 第三步:CUDA下载安装 遇到问题:安装完之后法找到nvcc ...

  5. AI 图片截取、ffmpeg使用及安装, anaconda环境,图片标注(labelme),模型训练(yolov5),CUDA+Pytorch安装及版本相关问题

    AI 图片截取(ffmpeg), anaconda环境,图片标注(labelme),模型训练(yolov5),CUDA+Pytorch安装及版本相关问题 一.截取有效图片 录制RTSP视频脚本 #!/ ...

  6. pytorch环境安装(配置:CUDA11.1+CUDNN11.1+torch.9.0+cu111+torchvision0.10.0+cu111+torchaudio==0.9.0)

    文章目录 1.下载CUDA 2 .下载CUDNN 3.CUDA安装 4.安装CUDNN 5.下载pytorch 6.安装pytorch 本文的显卡是 NVIDIA GeForce RTX 3060 L ...

  7. 快速入门Pytorch(1)--安装、张量以及梯度

    原文链接:mp.weixin.qq.com/s/WZdBm2JQ4- 这是翻译自官方的入门教程,教程地址如下: DEEP LEARNING WITH PYTORCH: A 60 MINUTE BLIT ...

  8. PyTorch框架学习一——PyTorch的安装(CPU版本)

    PyTorch框架学习一--PyTorch的安装(CPU版本) PyTorch简介 PyTorch的安装(CPU版) 机器学习/深度学习领域的学习都是需要理论和实践相结合的,而它们的实践都需要借助于一 ...

  9. Win10 + CUDA10.1+pytorch手动安装

    1.安装环境 OS:              Win10 专业 x64 Python:      Python 3.7.7(通过Anaconda软件自带安装) Anaconda: Anaconda3 ...

最新文章

  1. oracle数据库单个数据文件的大小限制
  2. SAP 常用查看库存的T-CODES
  3. mysql 查询语句执行顺序_MySQL 查询语句执行过程
  4. hibernate映射-单向n-n关联关系
  5. think python 2ed_Think Python 2ed 笔记(二)
  6. C#实现的UDP收发请求工具类实例
  7. 【医疗影像处理】DICOM Rescale Intercept / Rescale Slope
  8. 参加电子工业出版社博文视点举办的作者高峰论坛有感
  9. 前端所有安全问题总结
  10. C++ 创建 TcpClient 客户端,使用QAbstractSocket 、 QtNetwork
  11. Arduino时钟LCD显示
  12. 一文了解 Serverless 究竟是什么
  13. Android图像处理(五)镜像、倒影、drawBitmapMesh实现旗帜飘扬效果
  14. GeoPandas库入门教程
  15. 机器学习实战python版决策树以及Matplotlib注解绘制决策树
  16. java http ipv6_Java支持IPv6研究
  17. python学习——电子邮件
  18. python分钟转化为小时_Python将分钟转为小时和分钟
  19. Unity 物理系统 -- 碰撞体简介(碰撞、触发条件)
  20. 【SemiDrive源码分析】【X9芯片启动流程】20 - MailBox 核间通信机制介绍(代码分析篇)之 MailBox for RTOS 篇

热门文章

  1. 成电计算机考研专业课,2020成电软件工程考研经验贴
  2. 基于go实现简单的计算自资源监控
  3. SAP 成本组件分割价格详解
  4. Java斗_Java集合练习:斗地主游戏
  5. Android -- GridLayoutManager
  6. 10款可视化大屏特效,酷炫又内涵!
  7. 10.12-长沙亚信面试内容
  8. loaderruner
  9. Oracle数据库(索引、视图、伪列与伪表)
  10. 【驱动调试】SoftICE 使用说明