GPU和CPU的区别是什么啊?

电脑杂谈  发布时间:2019-05-04 02:13:14  来源:网络整理

gpu和cpu区别_电视cpu和gpu的区别_gpu和cpu的区别

首先纠正楼主一下,并不是GPU一定比CPU快的,呵呵。CPU也可以运行得非常快。这要看任务属性。

gpu和cpu区别_电视cpu和gpu的区别_gpu和cpu的区别

CPU和GPU有许多不同,但要了解最关键的一点,楼主需要知道关于并行任务分类的基本概念,也就是任务并行和计算并行。

gpu和cpu区别_gpu和cpu的区别_电视cpu和gpu的区别

并发处理(concurrency processing):指一个时间段中有几个程序都处于已启动运行到运行完毕之间,且这几个程序都是在同一个处理机(cpu)上运行,但任一个时刻点上只有一个程序在处理机(cpu)上运行。所谓异步是不需要等待被依赖的任务完成,只是通知被依赖的任务要完成什么工作,依赖的任务也立即执行,只要自己完成了整个任务就算完成了。改编成模式仅适用于编写能够高度并行化和任务内部松耦合的程序,map-reduce的发展方向是使得程序员能够轻松的编写运行时能高效的调度和执行任务,紧耦合的程序。

电视cpu和gpu的区别_gpu和cpu的区别_gpu和cpu区别

a. 位图是用一组指令集合来描述图形内容的 b. 色彩位图的质量仅由图像的分辨率决定的 c. 分辨率为 640*480,即垂直共有 640 个像素,水平有 480 个像素 d. 表示图像的色彩位数越少,同样大小的图像所占的存储空间越小 23. 以下叙述中正确的是。上面的语法格式中,sequence就是一个集合对象,也可以是一个表达式,但该表达式将返回一个集合对象,而item是一个任意的名字,就是被迭代输出的集合元素.此外,迭代集合对象时,还包含两个特殊的循环变量:。 它们的不同之处在于, each……next 循环 for 是针对集合对象中的每一个对象或数组中的每一个元素重复执行一次循环,而 foreach……next 循环语句是依指定的数字重复执行循环的次数。

gpu和cpu区别_电视cpu和gpu的区别_gpu和cpu的区别

搞清楚了上述两个概念,那么CPU和GPU最大的区别就可以弄清楚了。CPU的时钟频率非常高,缓存部件非常多,计算部件相对少,还有各种类似分支预测的复杂逻辑部件,这些部件都为任务并行提供了非常良好的运行环境。任务并行是CPU的主要并行方式。楼上所说的什么CPU同一时间只能干一件事情的说法,肯定是错误的,呵呵。

而GPU,时钟频率相对CPU要低不少,但是其最大的特点的计算部件非常多,存储部件很少,其结构也是非常对称的,线程间的切换不需要什么开销,这就决定了GPU的最大特点是适应计算并行,计算密集度越高的程序,在GPU上越可能得到更好地加速。而为什么GPU目前能大行其道呢?其价格便宜也是很重要的一个因素,另一位楼上这点也说错,嘿嘿。

◎指令追踪缓存(trace cache,作用类似于以前的一级指令缓存)所用的分支目标缓存(trace cache btb,主要用于动态分支预测),条目数(entries)由512条增加到2000条。分支预测精确度也有所改进,可以比程序规定的执行更多指令,但仍然不像cortex-a15那样是完全的乱序执行架构,只是部分而已。一个办法是所谓的静态分支预测,例如在指令编码格式里留出一个位元作为预测信息,编译器编译的时候,对这个位元进行标记,告诉处理器该跑那条分支,不过这对于已经采用了不具备这类条件执行指令的旧式 isa 二进制程序来说这样显然是不可能的。

而GPU,因为缓存部件少,则其不能应付逻辑转折很多的程序,这样的程序在GPU上运行会不划算,因为许多资源被浪费了。适合GPU的任务是计算密集程度大的,典型的是图形图像处理,当然现在的许多科学计算也能利用GPU了,GPU最大的优点是能够用计算线程间的快速切换,来掩盖存储及其他方面的开销。所以,必须要尽可能保证GPU的计算资源是满负荷的,才能达到最高加速,也即,需要能够建立起大量的,有足够计算任务的,相同的线程才行。

当然,CPU和GPU之间的区别也在一点点的弱化。新的GPU加强了逻辑判断能力,而CPU,则加强了SIMD并行计算能力,比如SSE1、2、3、4指令集,及最新的AVX指令集,都是为了加速计算并行,


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-96089-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      热点图片
      拼命载入中...