前言:
CUDA(Compute Unified Device Architecture)的中文全称为计算统一设备架构;由NVIDA显卡厂商推出的运算平台,推出一种通用并行计算架构,该架构使GPU能够解决复杂的计算问题。 它包含了CUDA指令集架构(ISA)以及GPU内部的并行计算引擎。
通俗讲:CUDA就是让python等程序语言可以同时在CPU和GPU上跑的一个平台,为GPU和编程语言(如python)的桥梁
应用:图像视觉做性能速度优化,CUDA是个很重要的工具
CUDA的体系结构了解:
| 绿色部分的CUDA,就是起了承上启下的作用。CUDA就是由CUDA驱动和CUDA工具包组成。 CUDA Toolkit在容器内部,而CUDA Driver在操作系统层 |
| 将CUDA划分成三部分结构,最底层依然是CUDA Driver,而驱动之上的是CUDA Runtime和CUDA Libraries,则我们结合图一可以推断出,CUDA toolkit由CUDA Runtime和CUDA Libraries组成。 还说明程序可以直接调用CUDA开发库、CUDA runtime ,CUDA驱动三部分。图四就是表达应用程序通过调用API来进行GPU上的计算。 NVCC:NVCC是CUDA的编译器,属于runtime层,当然也属于CUDA toolkit。 cuDNN:cuDNN的全称为NVIDIA CUDA® Deep Neural Network library,是NVIDIA专门针对深度神经网络中的基础操作而设计基于GPU的加速库。cuDNN为深度神经网络中的标准流程提供了高度优化的实现方式,例如convolution、pooling、normalization以及activation layers的前向以及后向过程。 CUDA这个平台一开始并没有安装cuDNN库,当开发者们需要用到深度学习GPU加速时才安装cuDNN库,工作速度相较CPU快很多 |
| 安装pytorch时会选择Compute platfrom,这里的如果选择CUDA系列,会安装cuDNN和不完整的CUDA Toolkit |
一. 检查电脑是否有Nvidia(英伟达显卡)
任务管理器——性能查看:
在右上方会显示GPU名称,只有带NVIDIA的英伟达显卡的电脑才能安装CUDA
二.安装NVIDIA驱动
1.查询GPU型号和下载
在官方网站根据自己的电脑的GPU型号下载对应驱动版本: NVIDIA GeForce 驱动程序 - N 卡驱动 | NVIDIA
可以直接下载最新版本,也可以直接根据自己电脑显卡型号下载:
下载后的安装包如下,可以直接双击进行安装:
2. 查看nvida cuda驱动版本
直接命令行输入nvida-smi :
显示CUDA的版本是10.1,此为CUDA Driver版本;
如果电脑需要安装CUDA Runtime Version(运行版本),要保证CUDA Driver 版本 >= CUDA Runtime 版本,也就是10.1及以前的。
出现错误:命令行输入nvida-smi如果显示 'nvidia-smi' 不是内部或外部命令,也不是可运行的程序 或批处理文件
解决方法:安装驱动后没有配置nvida的环境变量,此时将安装目录:C:\Program Files\NVIDIA Corporation\NVSMI添加到系统环境变量path中,重启电脑解决
三、安装CUDA runtime 版本
下载地址: https://developer.nvidia.com/cuda-downloads
版本选择:版本应该<=10.1(驱动版本)
双击安装安装CUDA runtime 版本过程,可以一起安装驱动,由于本电脑已安装了驱动,因此此次安装取消勾选驱动安装。
测试是否安装成功:
查看目录:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA 可以看到安装的v10.1的版本:
命令行进入到文件夹bin目录:
输入命令行 nvcc -V 查看下载的CUDA的版本如下图,即安装成功
四、下载cudnn库
1.下载地址: https://developer.nvidia.com/cudnn
点击Download,注意官网下载需要注册一下账号,下载CUDA10.1对应的版本
下载好后的文件夹:
将bin、include、lib文件夹中的文件都复制到CUDA的文件夹(C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1)中.
2.验证cudnn是否安装成功:
在cuda的v10.1\extras\demo_suite文件夹下执行demo:
执行:bandwidthTest.exe
执行:deviceQuery.exe
如上图,显示result=PASS 即安装成功
前言参考:
图文并茂讲解CUDA, CUDA Toolkit, CUDA Driver, CUDA Runtime, nvcc之间的关系及其版本兼容性-优快云博客