在桌面上右击如果能找到NVIDA控制面板,则说明该电脑有GPU。控制面板如下,并通过查看系统信息获取支持的Cuda版本。
点击 帮助->点击 系统信息 弹出下面的对话框,在驱动程序版本那一栏就能看到该计算机使用的驱动版本。
如果同时存在集成显卡的,要把独立显卡设置为默认的显卡。
如果觉得自己的驱动本版本太低了,也可以到nvidia官网https://www.nvidia.cn/geforce/drivers/下载升级驱动后匹配更高版本的cuda来安装。我这里没有去升级。
注意:虽有的卡驱动更新至较新版本,且CUDA Toolkit及PyTorch也可对应更新至新版本。但有的对应安装包无法使用,有可能是由于卡太旧的原因。
在Release Notes :: CUDA Toolkit Documentation 这里可以查询显卡驱动对应哪个版本cuda
下载合适版本的cuda:我的显卡适合安装10.0版本的
献上各类CUDA的下载连接:https://developer.nvidia.com/cuda-toolkit-archive
cuda10.0的网盘链接:https://pan.baidu.com/s/16SVUxvWF3e7tmPsL4ptGWA
提取码:2e80
因为咱们必需要CUDA10.0,所以选择版本的时候必定要选择CUDA Toolkit 10.0,注意是10.0,不能是10.1。
如上图所示,根据本身电脑的系统型号和位数选择合适的本地版本,而后下载便可。一共是2G多,可是英伟达的服务器不错,下载速度仍是比较快的。
下载下来是上图这个样子
双击选择自定义安装
接下来必定要讲究了,否则容易翻车!如上图所示,必定要选择自定义安装。
讲究第一步:尽可能将组件中的NVDIA GeForce Experience选项勾掉。有的人可能认识这个,这不调游戏画面参数的那个嘛。咳咳,这个是NVDIA提供给用户的一个相似于控制面板的东西,可是目前电脑装机通常都给安装了;并且就算是没有,这个东西对咱们显卡加速程序是没有帮助的。
讲究第二步:在组件CUDA中将Visual Studio Intergration取消掉。这个仍是蛮有意思的,由于这个组件是专为VS配置的,可是如今使用的代码编译器基本都是vscode,pycharm等轻量编译器之流,用VS就比较没意义了;我在网上还看见一个说法,这个必须取消掉,否则无法正确安装。反正取消就完事了。
讲究第三步:CUDA在安装的时候会默认安装一个NVDIA的显卡驱动。上图能够看出,该显卡驱动版本是411.31。划重点:“当前版本”这一栏会显示你目前电脑上的显卡驱动型号,好比上图所示,个人电脑目前驱动是430.86,这个数字大于411.31,说明版本更新一些。若是你的当前版本高于CUDA想要安装的新版本,那么必定要把display driver取消掉!否则CUDA安装发现你现有的比我要安的还高级,我还安个锤子,就会出现安装失败的错误;若是你的当前版本低于CUDA想要安装的新版本,那么必定要把display driver勾选,驱动版本不够新,CUDA也运行不了。若是巧了当前版本与新版本如出一辙,那勾不勾选随意。
再手动添加以下几项
OK安装好了,咱们去上图所示的路径检查nvcc.exe是否存在,这个程序很重要。
再从下图的路径中检查这个动态库是否存在,这个动态库也很重要。
(其他安装教程网址:cuDNN Archive | NVIDIA Developer)
为什么要安装cudnn:
1.CUDA:
Compute Unified Device Architecture,
CUDA是一个并行计算平台和编程模型,能够使得使用GPU进行通用计算变得简单和优雅。
CUDA™是一种通用并行计算架构,使GPU能够解决复杂的计算问题。
2. cuDNN:
全称NVIDIA cuDNN
GPU加速软件库(深度学习计算专用)
可以集成到Tensorflow、caffe
插入式设计
3. CUDA与CUDNN的关系
CUDA看作是一个工作台,上面配有很多工具,如锤子、螺丝刀等。
cuDNN是基于CUDA的深度学习GPU加速库,有了它才能在GPU上完成深度学习的计算。它就相当于工作的工具,比如它就是个扳手。
想要在CUDA上运行深度神经网络,就要安装cuDNN,这样才能使GPU进行深度神经网络的工作,工作速度相较CPU快很多。
安装cuDNN: 只要把cuDNN文件复制到CUDA的对应文件夹里就可以,即是所谓插入式设计,cuDNN是CUDA的扩展计算库,不会对CUDA造成其他影响。
安装cudnn要注册一个nvidia账号,才可以进行下载,这个也要注意和cuda的版本的对应关系。
注册账号的时候会提示如下错误,因为是外网
Nvidia 验证程序加载失败,解决办法_Veilhry-CSDN博客_n卡登录验证程序加载失败省流助手:修改网络DNS,或者使用加速器 (我建议改DNS,一步解决????)这主要是由于DNS节点的问题,需要修改DNS。使用Edge浏览器修改DNS点击设置中的隐私、搜索与服务下拉找到安全性设置设置谷歌DNS等一分钟,在进入nvidia 注册,完事儿!使用chrome浏览器设置,同理可得当然开启的谷歌DNS后,可能会打不开QQ邮箱的验证网页,关闭设置即可PS: 如果你的脸特别黑,上述操作均失败无反应。终极大招修改网络设置的DNS。https://blog.csdn.net/weixin_46439063/article/details/121585714?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2~aggregatepage~first_rank_ecpm_v1~rank_v31_ecpm-1-121585714.pc_agg_new_rank&utm_term=nvidia%E7%99%BB%E5%BD%95%E6%98%BE%E7%A4%BA%E9%AA%8C%E8%AF%81%E7%A8%8B%E5%BA%8F%E5%8A%A0%E8%BD%BD%E5%A4%B1%E8%B4%A5&spm=1000.2123.3001.4430
按照以上文章的方法如果都还是不能注册,那么就下载我的网盘资源吧cuda10.0+cudnn_for_win10_64网盘下载地址-深度学习文档类资源-CSDN下载1.cuda10.02.cudnn-10.0-windows10-x64-v7.6.4.38.zi更多下载资源、学习资料请访问CSDN下载频道.https://download.csdn.net/download/qq_39954916/63253299如果成功登录官网就按照下图选择对应版本下载
将CuDNN压缩包解压后,下面的三个文件夹复制到Cuda的安装目录下覆盖
然后cd到Demo_suite所在的目录执行.\bandwidthTest.exe和.\deviceQuery.exe, 如果Demo中显示PASS则说明安装成功
cuda和pytorch版本对应关系表:
在线安装详见这个博客:
C:\Users\ADMINI~1\AppData\Local\Temp\CUDAC:\Users\ADMINI~1\AppData\Local\Temp\CUDA
在线安装一般并不会成功,这里推荐离线安装。
离线安装有两种方法,一个是官网包安装,一个是清华镜像包安装。
Index of /anaconda/cloud/pytorch/ | 清华大学开源软件镜像站 | Tsinghua Open Source MirrorIndex of /anaconda/cloud/pytorch/ | 清华大学开源软件镜像站,致力于为国内和校内用户提供高质量的开源软件镜像、Linux 镜像源服务,帮助用户更方便地获取开源软件。本镜像站由清华大学 TUNA 协会负责运行维护。https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/下载合适版本安装包
管理员权限命令行cd到包的目录下执行:
pip install --offline pytorch-1.0.0-py3.7_cuda80_cudnn7_1.tar.bz2
pip install torchvision==0.2.2(当然也可以再清华镜像站下载合适的包离线安装,不过他比较小,这里就在线安装了),torch和torchvision的版本是有对应关系的,亲测安装torchvision0.3以上都会自动升级torch,如果不想更新torch的话就必须根据下表制定对应的版本来安装。
安装完成,查看:
到官网 https://download.pytorch.org/whl/torch_stable.html 下载合适版本的包,torch和torchvision 二个都需要安装.
注意,上图开头的“cu100”意思是对应cuda的版本是10.0。cuda100没有单独的torchvision供离线下载安装,只能在线安装。
包下载好了后,用pip install “包名”安装即可。
torchvision用语句 :pip install torchvision==0.2.1
命令行中输入ipython
import torch
print(torch.__version__)
print(torch.cuda.is_available())
torch.version # PyTorch version
torch.version.cuda # Corresponding CUDA version 对应的cuda的版本
torch.backends.cudnn.version() # Corresponding cuDNN version
torch.cuda.get_device_name(0) # GPU type
# CUDA TEST
import torch
x = torch.Tensor([1.0])
xx = x.cuda()
print(xx)
# CUDNN TEST
from torch.backends import cudnn
print(cudnn.is_acceptable(xx))