美文网首页
CPU和GPU的区别

CPU和GPU的区别

作者: 陈成_Adam | 来源:发表于2019-12-30 00:14 被阅读0次

    通过阅读本文你可以知道CPU和GPU的区别是什么。

    结构

    CPU与GPU的结构.png

    上图是CPU和GPU的结构对比图。通过对比可以看出:

    1. CPU的计算单元较复杂,但是个数较少;GPU的计算单元相对简单,但是个数很多
    2. CPU的控制单元较复杂;GPU的控制单元相对简单,分布在各计算核
    3. CPU的片上缓存较大;GPU的片上缓存较小,分布在各计算核

    为何他们的结构会差别这么大?这还得从他们的设计目标说起。

    设计

    我们知道,GPU最开始是专门用来做图像渲染的。图像渲染有以下特点:

    1. 被渲染的场景由非常多的顶点组成
    2. 顶点组成的场景会被光栅化成非常多的片段
    3. 对每个顶点或片段的处理逻辑都是一样的

    这类数据可以称作流数据。流数据具有数据量大和每个数据分量的处理逻辑类似的特点。NVIDIA的GPU中有一个概念是Stream Processor,即流处理器。流处理器处理的数据即为流数据。

    所以,GPU的设计目标是提高数据吞吐量。

    CPU要处理的任务从一开始就特别复杂,它得保证具有复杂控制逻辑的程序快速运行,而且还得支持多任务。多任务要求CPU的运行频率较高,这样才能让用户感觉多个任务是在并发执行。

    所以,GPU的设计目标是低时延。

    总结

    1. CPU需要很强的通用性来处理各种不同的数据类型,同时又要逻辑判断又会引入大量的分支跳转和中断的处理。这些都使得CPU的内部结构异常复杂。而GPU面对的则是类型高度统一的、相互无依赖的大规模数据和不需要被打断的纯净的计算环境。
    2. CPU是几个教授组成的,而GPU是很多个小学生组成的。
    3. CPU采用基于低延时的设计;GPU采用基于高吞吐量的设计。

    参考

    https://www.cnblogs.com/biglucky/p/4223565.html

    相关文章

      网友评论

          本文标题:CPU和GPU的区别

          本文链接:https://www.haomeiwen.com/subject/bisuoctx.html