gpu是什么和cpu的区别(gpu是什么意思)

如题所述



今天,让 下面我们简单说说CPU和GPU的区别。


关于CPU的故事我们讲了很多,之前也发过很多关于CPU的文章,这里就重点讲一下GPU。



教授 vs 小学生



你可以把CPU简单理解为一个博学的教授,什么都精通;GPU则是一堆只会简单算术的小学生。


然而,无论教授有多厉害,他都可以 不要在一秒钟内计算500次加减法。所以对于简单重复的计算,单个教授比不上一大批小学生。500个小学生在简单的算术运算中就能轻松击败教授。


我们可以看到CPU和GPU最大的区别在于架构。CPU适用于广泛的应用场景,可以执行任意程序;另一方面,GPU是为多任务设计的,具有很强的并发性。


具体来说就是多核。一般CPU有2核、4核、8核等。而GPU可能有数百或数千个内核。


可以看出,CPU内部缓存和控制部分占据了很大一部分片上面积,所以计算单元所占比例很小。


点击1V1嵌入式学习计划,现送100G精选学习资料。嵌入式物联网开发学习咨询


接下来,让 让我们来看看GPU。GPU只有非常简单的控制单元,其余大部分被计算单元占用,所以CPU的核数有限,而GPU却轻松堆了上千个核。


只是CPU中每个核的能力像个教授,而GPU中每个核的能力像个小学生。


你可能会奇怪,为什么GPU需要这么奇怪的架构?



为什么GPU需要这么多核心?



想想电脑上的一张图片是怎么表现的?无非是屏幕上的一个像素:


我们需要对每个像素进行计算,而且是同样的操作,就像小学生一样 刚才例子中的计算加法。


请注意,对于一个屏幕,通常有数百万像素。如果要串行计算每个像素,效率太低。因此,我们可以让GPU中的每一个核心计算出对应的像素。因为GPU的核很多,并行计算可以大大提高速度。


现在你应该明白GPU为什么是这样工作的了吧!


除了GPU的核心数量多,GPU的工作模式也是千奇百怪。



奇怪的工作方式



对于CPU来说,不同的内核可以执行不同的机器指令。coreA可以在coreB上运行浏览器线程,同时运行word线程,称为MIMD。


GPU就不一样了。GPU上的这些核心必须统一运行相同的机器指令,但可以操作不同的数据。它 就像这些小学生在某些时候必须进行加法计算一样。区别在于有的小学生可能需要算1 ^ 1,有的小学生需要算2 ^ 6等等。唯一的变化在于操作数,这被称为SIMD。


所以我们可以看到GPU的工作模式和CPU完全不同。


除了这种工作方式,GPU的指令集非常简单,不像CPU这样复杂的处理器。如果你看看CPU的编程手册,你会发现CPU负责很多事情:中断处理、内存管理、IO等。


这些图形处理器不会 不存在。可见GPU的定位很简单,就是纯计算。GPU绝不是用来代替CPU的。CPU只是给它一些GPU很擅长的东西,GPU只是一个配角来分担CPU # 039的工作。


CPU和GPU是这样协同工作的:



GPU擅长什么



适合GPU的计算场景如下:1)简单计算;2)重复计算,所以如果你的计算场景和这里的图像渲染差不多,用GPU也是合理的。


所以图形图像计算,天气预报,神经网络都适合GPU。哦,对了,GPU也适合挖矿。


好吧,那 今天到此为止。希望这篇文章能帮助你了解GPU。

王者之心2点击试玩
温馨提示:答案为网友推荐,仅供参考
相似回答
大家正在搜