CPU和GPU的区别是什么?

2021-09-02 05:36:31
导读大家好,我是绿色消费网的编辑小林。我会为你解答以上问题。最近看到网友在搜索CPU和GPU的区别是什么?的信息,于是小林编了一个关于CPU和G

大家好,我是绿色消费网的编辑小林。我会为你解答以上问题。最近看到网友在搜索CPU和GPU的区别是什么?的信息,于是小林编了一个关于CPU和GPU的区别是什么?的教程给大家学习。

首先,我们需要解释缩写CPU(中央处理器)和GPU(图形处理单元)代表什么。中央处理器是中央处理器,图形处理器是图形处理器。其次,要解释它们之间的区别,首先要了解它们之间的相似之处:它们都有总线和外部连接,都有自己的缓存系统,都有数字和逻辑运算单元。总之,两者都是为了完成计算任务而设计的。

先直观地画个示意图:

从图中我们可以看到,CPU和GPU都有自己的存储(橙色部分,实际存储系统比图中复杂)、控制逻辑(黄色部分)和算术单元(绿色部分),但不同的是,CPU的控制逻辑更复杂,而GPU的算术单元虽小但数量众多,而且GPU还可以提供更多的寄存器和程可控的多级存储资源。

两者的区别在于芯片内存在的缓存系统和数字逻辑运算单元的结构差异:CPU虽然内核多,但总数不超过两位数,每个内核都有足够的缓存和足够的数字逻辑运算单元,加速分支判断甚至更复杂的逻辑判断的硬件也很多;GPU的内核远远多于CPU,所以被称为多核(NVIDIA Fermi有512个内核)。每个核心的缓存大小都比较小,逻辑算术单元数量少且简单(一开始浮点计算中GPU总是弱于CPU)。因此,CPU擅长处理具有复杂计算步骤和复杂数据依赖关系的计算任务,如分布式计算、数据压缩、人工智能、物理模拟以及许多其他计算任务。

由于历史原因,GPU是为视频游戏而生的(到目前为止,其主要驱动力是不断增长的视频游戏市场)。3D游戏中经常出现的一种操作就是对海量数据进行同样的操作,比如:对每个顶点进行同样的坐标变换,根据同样的光照模型计算每个顶点的颜色值。GPU的众核架构非常适合将同一个指令流并行发送到多个内核,用不同的输入数据执行。2003-2004年前后,图形以外领域的专家开始关注GPU独特的计算能力,开始尝试将GPU用于通用计算(GPU)。之后,NVIDIA发布了CUDA,AMD和苹果也发布了OpenCL,GPU开始广泛应用于通用计算领域,包括数值分析、海量数据处理(排序、Map-Reduce等)。),财务分析等等。

简而言之,程序员在为CPU编写程序时,往往会使用复杂的逻辑结构优化算法来减少计算任务的运行时间,即Latency。当程序员为图形处理器编写程序时,他们利用自己在处理海量数据方面的优势,通过提高总数据吞吐量来掩盖语言。目前,CPU和GPU的差距正在逐渐缩小,因为GPU在处理不规则任务和线程间通信方面取得了很大的进步。另外,功耗问题对于GPU来说比CPU更严重。

本文就为大家讲解到这里了。
免责声明:本文由用户上传,如有侵权请联系删除!

猜你喜欢

最新文章