GPU Vs CPU

概念

CPU
(Central Processing Unit)中央处理器
是一块超大规bai模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit)。
它的功能主要是解释计算机指令以及处理计算机软件中的数据。

GPU
(Graphics Processing Unit)图形处理器
是一种专门在个人电脑、工作站、游戏机和一些移动设备(如平板电脑、智能手机等)上图像运算工作的微处理器。

GPU由成千上万个微核组成的处理器.
擅长处理大量并行的简单计算,比如在图像应用中渲染多边形.

什么是GPU?

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

CPU和GPU的关系

在没有GPU之前,基本上所有的任务都是交给CPU来做的。
有GPU之后,二者就进行了分工,CPU负责逻辑性强的事物处理和串行计算,GPU则专注于执行高度线程化的并行处理任务(大规模计算任务)。
为什么这么分工?这是由二者的硬件构成决定的。
可以看出,CPU是“主(host)”而GPU是“从(device)”,
GPU无论发展得多快,都只能是替CPU分担工作,而不是取代CPU。

独立显卡和集成显卡的区别

所谓集成,是指显卡集成在主板上,不能随意更换。
而独立显卡是作为一个独立的器件插在主板的AGP接口上的,可以随时更换升级。
另外,集成显卡使用物理内存,而独立显卡有自己的显存。
一般而言,同期推出的独立显卡的性能和速度要比集成显卡好、快。
值得一提的是,集成显卡和独立显卡都是有GPU的。

扩展知识点

几个例子

市长 Vs 副市长

市长和副市长的区别。
市长管全局,各副市长分管经济、交通、治安、医疗、教育等。


教授 Vs 小学生

CPU擅长逻辑控制,串行的运算。
和通用类型数据运算不同,GPU擅长的是大规模并发计算,这也正是密码破解等所需要的。
所以GPU除了图像处理,也越来越多的参与到计算当中来。

GPU的工作大部分就是这样,计算量大,但没什么技术含量,而且要重复很多很多次。
就像你有个工作需要算几亿次一百以内加减乘除一样,最好的办法就是雇上几十个小学生一起算,一人算一部分,反正这些计算也没什么技术含量,纯粹体力活而已。
而CPU就像老教授,积分微分都会算,就是工资高,一个老教授资顶二十个小学生,你要是富士康你雇哪个?
GPU就是这样,用很多简单的计算单元去完成大量的计算任务,纯粹的人海战术。
这种策略基于一个前提,就是小学生A和小学生B的工作没有什么依赖性,是互相独立的。
很多涉及到大量计算的问题基本都有这种特性,比如你说的破解密码,挖矿和很多图形学的计算。
这些计算可以分解为多个相同的简单小任务,每个任务就可以分给一个小学生去做。但还有一些任务涉及到“流”的问题。
比如你去相亲,双方看着顺眼才能继续发展。总不能你这边还没见面呢,那边找人把证都给领了。这种比较复杂的问题都是CPU来做的。

总而言之,CPU和GPU因为最初用来处理的任务就不同,所以设计上有不小的区别。
而某些任务和GPU最初用来解决的问题比较相似,所以用GPU来算了。
GPU的运算速度取决于雇了多少小学生,CPU的运算速度取决于请了多么厉害的教授。
教授处理复杂任务的能力是碾压小学生的,但是对于没那么复杂的任务,还是顶不住人多。
当然现在的GPU也能做一些稍微复杂的工作了,相当于升级成初中生高中生的水平。
但还需要CPU来把数据喂到嘴边才能开始干活,究竟还是靠CPU来管的。


大脑 Vs 眼睛
CPU可以看做是大脑,是处理所有信息的。
GPU就是眼睛,只处理图片。
但是大脑也处理眼睛的信息,是从属的关系.


抽象层来说(画大饼)

从古代到现在,分工都是越来越精细,
为了适应社会,提高效率,CPU细分出来一个GPU...
以后可能还会有XPU出来...

摘抄文档

作者:林夕
链接:https://www.zhihu.com/question/28422454/answer/517317050
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

posted @ 2021-02-28 22:29  zh89233  阅读(435)  评论(0编辑  收藏  举报