共计 1485 个字符,预计需要花费 4 分钟才能阅读完成。
这篇文章主要介绍操作系统中 GPU、CPU 两者之间的区别有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
1. CPU 即中央处理器
CPU(Central Processing Unit, 中央处理器)就是机器的“大脑”,也是布局谋略、发号施令、控制行动的“总司令官”。
CPU 的结构主要包括运算器 (ALU, Arithmetic and Logic Unit)、控制单元(CU, Control Unit)、寄存器(Register)、高速缓存器(Cache) 和它们之间通讯的数据、控制及状态的总线。
简单来说就是:计算单元、控制单元和存储单元
2. GPU 即图形处理器。
GPU 全称为 Graphics Processing Unit,中文为图形处理器,就如它的名字一样,GPU 最初是用在个人电脑、工作站、游戏机和一些移动设备 (如平板电脑、智能手机等) 上运行绘图运算工作的微处理器。
为什么 GPU 特别擅长处理图像数据呢? 这是因为图像上的每一个像素点都有被处理的需要,而且每个像素点处理的过程和方式都十分相似,也就成了 GPU 的天然温床。
GPU 的构成相对简单,有数量众多的计算单元和超长的流水线,特别适合处理大量的类型统一的数据。但 GPU 无法单独工作,必须由 CPU 进行控制调用才能工作。CPU 可单独作用,处理复杂的逻辑运算和不同的数据类型,但当需要大量的处理类型统一的数据时,则可调用 GPU 进行并行计算。
两者区别:
从根本上说 CPU 和 GPU 它们的目的不同,且有不同侧重点,也有着不同的性能特性,在某些工作中 CPU 执行得更快,另一工作中或许 GPU 能更好。当你需要对大量数据做同样的事情时,GPU 更合适,当你需要对同一数据做很多事情时,CPU 正好。
然而在实际应用中,后一种情形更多,也就是 CPU 更为灵活能胜任更多的任务。GPU 能做什么? 关于图形方面的以及大型矩阵运算,如机器学习算法、挖矿、暴力破解密码等,GPU 会大幅提高计算效率。
Cache, local memory:CPU GPU
Threads(线程数): GPU CPU
Registers: GPU CPU 多寄存器可以支持非常多的 Thread,thread 需要用到 register,thread 数目大,register 也必须得跟着很大才行。
SIMD Unit(单指令多数据流, 以同步方式,在同一时间内执行同一条指令): GPU CPU。
简单地说,CPU 擅长分支预测等复杂操作,GPU 擅长对大量数据进行简单操作。一个是复杂的劳动,一个是大量并行的工作。
其实 GPU 可以看作是一种专用的 CPU,专为单指令在大块数据上工作而设计,这些数据都是进行相同的操作,要知道处理一大块数据比处理一个一个数据更有效,执行指令开销也会大大降低,因为要处理大块数据,意味着需要更多的晶体管来并行工作,现在旗舰级显卡都是百亿以上的晶体管。
CPU 呢,它的目的是尽可能快地在单个数据上执行单个指令。由于它只需要使用单个数据单条指令,因此所需的晶体管数量要少得多,目前主流桌面 CPU 晶体管都是十亿以下,和顶级 GPU 相差十倍以上,但它需要更大的指令集,更复杂的 ALU(算术逻辑单元),更好的分支预测,更好的虚拟化架构、更低的延迟等等。
另外,像我们的操作系统 Windows,它是为 x86 处理器编写的,它需要做的任务执行的进程,在 CPU 上肯定更为高效,你想每个线程的任务并不相同,基本上难以并行化,完全发挥不了 GPU 的长处。
以上是“操作系统中 GPU、CPU 两者之间的区别有哪些”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注丸趣 TV 行业资讯频道!