1、什么是CUDA
CUDA(ComputeUnified Device Architecture),是显卡厂商NVIDIA推出的运算平台。 CUDA是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。
2、什么是CUDNN
NVIDIA cuDNN是用于深度神经网络的GPU加速库。它强调性能、易用性和低内存开销。NVIDIA cuDNN可以集成到更高级别的机器学习框架中,如谷歌的Tensorflow、加州大学伯克利分校的流行caffe软件。简单的插入式设计可以让开发人员专注于设计和实现神经网络模型,而不是简单调整性能,同时还可以在GPU上实现高性能现代并行计算。
3、CUDA与CUDNN的关系
CUDA看作是一个工作台,上面配有很多工具,如锤子、螺丝刀等。cuDNN是基于CUDA的深度学习GPU加速库,有了它才能在GPU上完成深度学习的计算。它就相当于工作的工具,比如它就是个扳手。但是CUDA这个工作台买来的时候,并没有送扳手。想要在CUDA上运行深度神经网络,就要安装cuDNN,就像你想要拧个螺帽就要把扳手买回来。这样才能使GPU进行深度神经网络的工作,工作速度相较CPU快很多。
cuDNN是一个SDK,是一个专门用于神经网络的加速包,注意,它跟我们的CUDA没有一一对应的关系,即每一个版本的CUDA可能有好几个版本的cuDNN与之对应,但一般有一个最新版本的cuDNN版本与CUDA对应更好。
总结:cuDNN与CUDA没有一一对应的关系
4、CUDNN不会对CUDA造成影响
官方Linux安装指南表述:
从官方安装指南可以看出,只要把cuDNN文件复制到CUDA的对应文件夹里就可以,即是所谓插入式设计,把cuDNN数据库添加CUDA里,cuDNN是CUDA的扩展计算库,不会对CUDA造成其他影响。
cuDNN的安装文件有两个文件夹,共五个文件,如下
cudnn.h是调用加速库的文件,*.os是
CUDA平台里对应文件夹的文件,如下
可以看到,CUDA已有的文件与cuDNN没有相同的文件,复制CUDNN的文件后,CUDA里的文件并不会被覆盖,CUDA其他文件并不会受影响。
作者:Sunglam
链接:https://www.jianshu.com/p/622f47f94784
来源:简书
Tensorflow不同版本要求与CUDA及CUDNN版本对应关系
原文链接:https://blog.csdn.net/oMoDao1/article/details/83241074
5、显卡,显卡驱动
- 显卡: 简单理解这个就是我们前面说的GPU,尤其指NVIDIA公司生产的GPU系列,因为后面介绍的cuda,cudnn都是NVIDIA公司针对自身的GPU独家设计的。
- 显卡驱动:很明显就是字面意思,通常指NVIDIA Driver,其实它就是一个驱动软件,而前面的显卡就是硬件。
- gpu架构:Tesla、Fermi、Kepler、Maxwell、Pascal
- 芯片型号:GT200、GK210、GM104、GF104等
- 显卡系列:GeForce、Quadro、Tesla
- GeForce显卡型号:G/GS、GT、GTS、GTX
原文blog:https://cloud.tencent.com/developer/article/1536738
6、NVDIA显卡驱动 和 CUDA 的区别
NVIDIA的显卡驱动程序 和 CUDA完全是两个不同的概念哦!
CUDA是NVIDIA推出的用于自家GPU的并行计算框架,也就是说CUDA只能在NVIDIA的GPU上运行,而且只有当要解决的计算问题是可以大量并行计算的时候才能发挥CUDA的作用。CUDA的本质是一个工具包(ToolKit)。
显卡驱动的安装:
当我们使用一台电脑的时候默认的已经安装了NVIDIA的显卡驱动,因为没有显卡驱动根本用不了显卡嘛,但是这个时候我们是没有CUDA可以用的,我们可以更新我们的驱动,更新链接为:
https://www.nvidia.com/Download/index.aspx?lang=en-us
在这个里面可以根据自己的显卡类型选择最新的驱动程序。显卡驱动程序当前大小大概500多M。
CUDA ToolKit的安装:
CUDA的下载地址为:https://developer.nvidia.com/cuda-downloads
我们可以选择两种安装方式,一种是在线安装(我还没用过),一中离线安装(我采用的)即本地安装,
当我们选择离线安装,当我们选定相对应的版本之后,下载的时候发现这个地方的文件大小大概在2G左右,Linux系统下面我们选择runfile(local) 完整安装包从本地安装,或者是选择windows的本地安装。CUDA Toolkit本地安装包时内含特定版本Nvidia显卡驱动的,所以只选择下载CUDA Toolkit就足够了,如果想安装其他版本的显卡驱动就下载相应版本即可。
所以,NVIDIA显卡驱动和CUDA工具包本身是不具有捆绑关系的,也不是一一对应的关系,只不过是离线安装的CUDA工具包会默认携带与之匹配的最新的驱动程序。
注意事项:NVIDIA的显卡驱动器与CUDA并不是一一对应的哦,CUDA本质上只是一个工具包而已,所以我可以在同一个设备上安装很多个不同版本的CUDA工具包,比如我的电脑上同事安装了 CUDA 9.0、CUDA 9.2、CUDA 10.0三个版本。一般情况下,我只需要安装最新版本的显卡驱动,然后根据自己的选择选择不同CUDA工具包就可以了,但是由于使用离线的CUDA总是会捆绑CUDA和驱动程序,所以在使用多个CUDA的时候就不要选择离线安装的CUDA了,否则每次都会安装不同的显卡驱动,这不太好,我们直接安装一个最新版的显卡驱动,然后在线安装不同版本的CUDA即可。
总结:CUDA和显卡驱动是没有一一对应的。
原文链接:https://blog.csdn.net/qq_27825451/article/details/89082978
7、NVDIA显卡驱动, CUDA, cuDNN, tensorflow安装顺序
很多过来人推荐的顺序是:
1.NVDIA显卡驱动, 2.CUDA, 3.cuDNN, 4.tensorflow
注意版本号相互兼容
1.检查自己的显卡,以及显卡驱动
2.选择CUDA toolkit
3.选择cuDNN
4.tensorflow-gpu
查看GPU版本(N卡)
lspci | grep -i nvidia
查看nvidia驱动版本
cat /proc/driver/nvidia/version
查看CUDA版本
cat /usr/local/cuda/version.txt
nvcc -V # nvidia 编译器版本
查看cuDNN版本
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
查看tensorflow版本
pip list | grep tensorflow
原文:https://www.jianshu.com/p/464fefb5c5d8
推荐blog:
win10 tensorflow-gpu 2.0安装教程 - 知乎 (流程比较清楚)
https://zhuanlan.zhihu.com/p/68183767
Ubuntu18.04安装cuDNN和Tensorflow的正确姿势_FlyWine的博客-CSDN博客 (详细)
https://blog.csdn.net/wf19930209/article/details/95332984
Ubuntu16.04 + 1080Ti深度学习环境配置教程 - 简书 (偏向细节)
https://www.jianshu.com/p/5b708817f5d8
8、cuDNN安装
首先说一下网上大多数中文安装cuDNN教程的错误方式,这种方式真的坑人无数。
简单地说网上的大多错误的安装cuDNN的方式都是将下载后的cuDNN压缩包解压。然后再将cudnn的头文件(cuda/include目录下的.h文件)复制到cuda安装路径的include路径下,将cudnn的库文件(cuda/lib64目录下的所有文件)复制到cuda安装路径的lib64路径下。这种方法如果不重置cuDNN相应的符号链接的话是不能成功的安装cuDNN的。
原文blog:
最正确的姿势安装cudnn,网上大多数教程都太坑了_cuda,cudnn安装,ubuntu_Lucifer_zzq的博客-CSDN博客
https://blog.csdn.net/Lucifer_zzq/article/details/76675239
来源:CSDN
作者:如果曾经拥有
链接:https://blog.csdn.net/Zhou_Dao/article/details/103703289