GPU 和显卡是什么关系?

共 2868字,需浏览 6分钟

 ·

2021-05-06 22:56

点击上方AI算法与图像处理”,选择加"星标"或“置顶”

重磅干货,第一时间送达




本文转自:深度学习这件小事

  
什么是显卡?

显卡(Video card,Graphics card)全称显示接口卡,又称显示适配器,是计算机最基本配置、最重要的配件之一。就像电脑联网需要网卡,主机里的数据要显示在屏幕上就需要显卡。因此,显卡是电脑进行数模信号转换的设备,承担输出显示图形的任务。具体来说,显卡接在电脑主板上,它将电脑的数字信号转换成模拟信号让显示器显示出来

原始的显卡一般都是集成在主板上,只完成最基本的信号输出工作,并不用来处理数据。随着显卡的迅速发展,就出现了GPU的概念,显卡也分为独立显卡和集成显卡(见附1)。

 什么是GPU?


GPU这个概念是由Nvidia公司于1999年提出的。GPU是显卡上的一块芯片,就像CPU是主板上的一块芯片。那么1999年之前显卡上就没有GPU吗?当然有,只不过那时候没有人给它命名,也没有引起人们足够的重视,发展比较慢。

自Nvidia提出GPU这个概念后,GPU就进入了快速发展时期。简单来说,其经过了以下几个阶段的发展:

1)仅用于图形渲染,此功能是GPU的初衷,这一点从它的名字就可以看出:Graphic Processing Unit,图形处理单元;

2)后来人们发现,GPU这么一个强大的器件只用于图形处理太浪费了,它应该用来做更多的工作,例如浮点运算。怎么做呢?直接把浮点运算交给GPU是做不到的,因为它只能用于图形处理(那个时候)。最容易想到的,是把浮点运算做一些处理,包装成图形渲染任务,然后交给GPU来做。这就是GPGPU(General Purpose GPU)的概念。不过这样做有一个缺点,就是你必须有一定的图形学知识,否则你不知道如何包装。

3)于是,为了让不懂图形学知识的人也能体验到GPU运算的强大,Nvidia公司又提出了CUDA的概念。

什么是CUDA?


CUDA(Compute Unified Device Architecture),通用并行计算架构,是一种运算平台。它包含CUDA指令集架构以及GPU内部的并行计算引擎。你只要使用一种类似于C语言的CUDA C语言,就可以开发CUDA程序,从而可以更加方便的利用GPU强大的计算能力,而不是像以前那样先将计算任务包装成图形渲染任务,再交由GPU处理。

注意,并不是所有GPU都支持CUDA。

CPU和GPU的关系

在没有GPU之前,基本上所有的任务都是交给CPU来做的。有GPU之后,二者就进行了分工,CPU负责逻辑性强的事物处理和串行计算,GPU则专注于执行高度线程化的并行处理任务(大规模计算任务)。为什么这么分工?这是由二者的硬件构成决定的。

可以看出,CPU是“主(host)”而GPU是“从(device)”,GPU无论发展得多快,都只能是替CPU分担工作,而不是取代CPU。

附1:独立显卡和集成显卡的区别。

所谓集成,是指显卡集成在主板上,不能随意更换。而独立显卡是作为一个独立的器件插在主板的AGP接口上的,可以随时更换升级。

另外,集成显卡使用物理内存,而独立显卡有自己的显存。一般而言,同期推出的独立显卡的性能和速度要比集成显卡好、快。

值得一提的是,集成显卡和独立显卡都是有GPU的。

附2:Nvidia显卡分类。

GeForce系列:家庭娱乐。打游戏必备;

Quadro系列:专业绘图设计。视频渲染,经常使用3ds Max、Maya等软件的必备。

Tesla系列:高端显卡,用于大规模的并行计算。土豪必备。

另外,目前比较流行的物理引擎PhysX,并不是所有显卡都支持。官方文档上说GeForce 8及之后的显卡都支持。

结束语:

CUDA只是一种并行计算架构,相关的概念还有OpenCL、OpenMP等。


       
个人微信(如果没有备注不拉群!
请注明:地区+学校/企业+研究方向+昵称



下载1:何恺明顶会分享


AI算法与图像处理」公众号后台回复:何恺明,即可下载。总共有6份PDF,涉及 ResNet、Mask RCNN等经典工作的总结分析


下载2:终身受益的编程指南:Google编程风格指南


AI算法与图像处理」公众号后台回复:c++,即可下载。历经十年考验,最权威的编程规范!



     
下载3 CVPR2021

AI算法与图像处公众号后台回复:CVPR即可下载1467篇CVPR 2020论文 和 CVPR 2021 最新论文

点亮 ,告诉大家你也在看



浏览 14
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报