- 7
- 0
- 约5.59千字
- 约 13页
- 2021-12-04 发布于天津
- 举报
PAGE 1
PAGE 1
科普GPU和CPU之间的区别
CPU和GPU之所以大不相同,是由于其设计目标的不同,它们分别针对了两种不同的应用场景。 CPU和GPU之所以大不相同,是由于其设计目标的不同,它们分别针对了两种不同的应用场景。CPU需要很强的通用性来处理各种不同的数据类型,同时又要规律推断又会引入大量的分支跳转和中断的处理。这些都使得CPU的内部结构异常复杂。而GPU面对的则是类型高度统一的、相互无依靠的大规模数据和不需要被打断的纯洁的计算环境。 这个视频,特别具象的表述了CPU和GPU在图像处理时的不同的原理和方法。看到GPU的模型喷射出的一瞬间,你就秒懂了。 依据上面视频中的比方,你应当很清晰CPU和GPU就呈现出特别不同的架构: 绿色的是计算单元 橙红色的是存储单元 橙黄色的是掌握单元 GPU采用了数量众多的计算单元和超长的流水线,但只有特别简洁的掌握规律并省去了Cache。而CPU不仅被Cache占据了大量空间,而且还有有复杂的掌握规律和诸多优化电路,相比之下计算能力只是CPU很小的一部分。 GPU如何加快软件应用程序的运行速度 GPU加速计算可以供应非凡的应用程序性能,能将应用程序计算密集部分的工作负载转移到GPU,同时仍由CPU运行其余程序代码。从用户的角度来看,应用程序的运行速度明显加快。 GPU与CPU性能比较 理解GPU和CPU之间区分的一种简洁方式是比较它们如何处理任务。CPU由专为顺序串行处理而优化的几个核心组成,而GPU则拥有一个由数以千计的更小、更高效的核心(专为同时处理多重任务而设计)组成的大规模并行计算架构。 从上图可以看出: Cache,localmemory:CPUGPU Threads(线程数):GPUCPU Registers:GPUCPU SIMDUnit(单指令多数据流,以同步方式,在同一时间内执行同一条指令):GPUCPU。 CPU基于低延时的设计: CPU有强大的ALU(算术运算单元),它可以在很少的时钟周期内完成算术计算。 当今的CPU可以达到64bit双精度。执行双精度浮点源算的加法和乘法只需要1~3个时钟周期。 CPU的时钟周期的频率是特别高的,达到1.532~3gigahertz(千兆HZ,10的9次方). 大的缓存也可以降低延时。保存许多的数据放在缓存里面,当需要访问的这些数据,只要在之前访问过的,如今直接在缓存里面取即可。 复杂的规律掌握单元。当程序含有多个分支的时候,它通过供应分支预估的能力来降低延时。 CPU和GPU之所以大不相同,是由于其设计目标的不同,它们分别针对了两种不同的应用场景。 CPU和GPU之所以大不相同,是由于其设计目标的不同,它们分别针对了两种不同的应用场景。CPU需要很强的通用性来处理各种不同的数据类型,同时又要规律推断又会引入大量的分支跳转和中断的处理。这些都使得CPU的内部结构异常复杂。而GPU面对的则是类型高度统一的、相互无依靠的大规模数据和不需要被打断的纯洁的计算环境。 这个视频,特别具象的表述了CPU和GPU在图像处理时的不同的原理和方法。看到GPU的模型喷射出的一瞬间,你就秒懂了。 依据上面视频中的比方,你应当很清晰CPU和GPU就呈现出特别不同的架构: 绿色的是计算单元 橙红色的是存储单元 橙黄色的是掌握单元 GPU采用了数量众多的计算单元和超长的流水线,但只有特别简洁的掌握规律并省去了Cache。而CPU不仅被Cache占据了大量空间,而且还有有复杂的掌握规律和诸多优化电路,相比之下计算能力只是CPU很小的一部分。 GPU如何加快软件应用程序的运行速度 GPU加速计算可以供应非凡的应用程序性能,能将应用程序计算密集部分的工作负载转移到GPU,同时仍由CPU运行其余程序代码。从用户的角度来看,应用程序的运行速度明显加快。 GPU与CPU性能比较 理解GPU和CPU之间区分的一种简洁方式是比较它们如何处理任务。CPU由专为顺序串行处理而优化的几个核心组成,而GPU则拥有一个由数以千计的更小、更高效的核心(专为同时处理多重任务而设计)组成的大规模并行计算架构。 从上图可以看出: Cache,localmemory:CPUGPU Threads(
原创力文档

文档评论(0)