显卡、显卡驱动、显存、GPU、CUDA、cuDNN

流过昼夜 提交于 2021-01-13 05:54:59
显卡

Video card,Graphics card,又叫显示接口卡,是一个硬件概念(相似的还有网卡),执行计算机到显示设备的数模信号转换任务,安装在计算机的主板上,将计算机的数字信号转换成模拟信号让显示器显示出来。

显卡是计算机的标配之一,计算机要显示图像就必须安装显卡。普通计算机的显卡一般是集成在主板上的。


显卡驱动


显卡驱动是显卡跟计算机连接的桥梁,可以让计算机识别到GPU硬件,是必须正确安装的,不同厂商、不同型号的GPU对应不同的显卡驱动。
非开发人员不用安装CUDA或cuDNN,但是一定要安装显卡驱动。

查看Nvidia显卡和显卡驱动版本信息:

nvidia-smi

显存


又叫帧缓存,作用是用来存储GPU处理过或者即将提取的渲染数据,显存相对于GPU相当于内存对于CPU。


GPU


Graphics Processing Unit,图形处理单元,GPU是显卡上的一块芯片,也是显卡的核心设备,GPU和显卡的关系类似于CPU和主板的关系。
早期的GPU主要用于图形渲染,可以让电脑显示更加逼真、细节更加丰富的图形图像,牛逼的GPU可以跑大型3D游戏显示流畅不卡顿,这也是人们对GPU或显卡的最初认识。
后来人们发现GPU还可以做更多的工作,例如执行矩阵运算和浮点运算,特别是可以用来加速神经网络模型的训练,GPU也在并行计算这条路上越走越远。可以说GPU让人工智能有了更多可能。


CUDA


Compute Unified Device Architecture,CUDA是NVIDIA推出的用于NVIDIA GPU的并行计算框架,是一种运算平台,是软件层面的概念,相关的概念还有OpenCL、OpenMP等。

GPU的设计是用来做图像渲染任务的,如果没有CUDA,开发人员就要先把计算任务打包成图形渲染任务再让GPU执行,开发难度很高。可以认为CUDA完成了这个打包任务,只需要通过CUDA提供的API,把数据和运算规则交给CUDA,让CUDA和GPU交互,再返回运算结果。

查看CUDA版本信息:

nvcc -V

cuDNN


CUDA Deep Neural Network library,是NVIDIA打造的针对深度神经网络的加速库,是一个用于深层神经网络的GPU加速库。cuDNN可以把加载到GPU上的网络层数据根据神经网络数据运算的特点(如卷积操作、前后向运算流、pooling、softmax、激活函数等)进行优化,加速模型训练。

几乎所有的深度学习框架都支持cuDNN加速优化,如Caffe、Caffe2、TensorFlow、Torch、Pytorch、Theano等。


易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!