国外镜像 WEB视频自适应 centos8 razor redux vue树形菜单 java后台框架 seo计费系统 jquery通过class获取元素 div外边距 vm虚拟化引擎 mysql汉化包 当前时间减一天 python练习题 python3文件操作 python环境安装教程 python简易教程 python基础练习 python例子 python函数内定义函数 python处理json文件 java教材 java实用教程 java获得当前日期 java新建文件 linux系统启动过程 嵌入式开发教程 python教程视频 js四舍五入 flash相册制作 俄罗斯方块java代码 kms神龙版 在线pr序列设置 js轮播图代码 防沉迷助手 cms教程 网络文件服务器 英雄联盟体验服转换器 苹果x银色 爱奇艺无法投屏
当前位置: 首页 > 学习教程  > 编程语言

GPU入门

2020/8/11 20:05:28 文章标签:

 

 

CPUGPU区别,CPU像是一头牛,GPU像是一万只小鸡。

        

         关于CPU设计理念:基于低延时性设计

 

 

  • ALUCPU有强大的ALU(算术运算单元),它可以在很少的时钟周期内完成算术计算。
    • 当今的CPU可以达到64bit 双精度。执行双精度浮点源算的加法和乘法只需要1~3个时钟周期。
    • CPU的时钟周期的频率是非常高的,达到1.532~3gigahertz(千兆HZ, 10的9次方).
  • Cache大的缓存也可以降低延时。保存很多的数据放在缓存里面,当需要访问的这些数据,只要在之前访问过的,如今直接在缓存里面取即可。
  • Control复杂的逻辑控制单元。
    • 当程序含有多个分支的时候,它通过提供分支预测的能力来降低延时。
    • 数据转发。 当一些指令依赖前面的指令结果时,数据转发的逻辑控制单元决定这些指令在pipeline中的位置并且尽可能快的转发一个指令的结果给后续的指令。这些动作需要很多的对比电路单元和转发电路单元。

 

结论:CPU运算速度更快,指令周期短,即便是双精度的浮点数乘法也只需要1~3个时钟周期。

        

      GPU的设计理念:基于吞吐量。

 

 

ALU,Cache:GPU的特点是有很多的ALU和很少的cache. 缓存的目的不是保存后面需要访问的数据的,这点和CPU不同,而是为thread提高服务的。如果有很多线程需要访问同一个相同的数据,缓存会合并这些访问,然后再去访问dram(因为需要访问的数据保存在dram中而不是cache里面),获取数据后cache会转发这个数据给对应的线程,这个时候是数据转发的角色。但是由于需要访问dram,自然会带来延时的问题。

Control:控制单元(左边黄色区域块)可以把多个的访问合并成少的访问。

GPU的虽然有dram延时,却有非常多的ALU和非常多的thread. 为了平衡内存延时的问题,我们可以中充分利用多的ALU的特性达到一个非常大的吞吐量的效果。尽可能多的分配多的Threads.通常来看GPU ALU会有非常重的pipeline就是因为这样。

        

结论:GPU可以达到很好的吞吐量。

 

对比:CPU擅长逻辑控制,串行的运算。和通用类型数据运算不同,GPU擅长的是大规模并发计算,这也正是密码破解等所需要的。所以GPU除了图像处理,也越来越多的参与到计算当中来。

 

 

 

CPUGPU区别,CPU像是一头牛,GPU像是一万只小鸡。

        

         关于CPU设计理念:基于低延时性设计

 

  • ALUCPU有强大的ALU(算术运算单元),它可以在很少的时钟周期内完成算术计算。
    • 当今的CPU可以达到64bit 双精度。执行双精度浮点源算的加法和乘法只需要1~3个时钟周期。
    • CPU的时钟周期的频率是非常高的,达到1.532~3gigahertz(千兆HZ, 10的9次方).
  • Cache大的缓存也可以降低延时。保存很多的数据放在缓存里面,当需要访问的这些数据,只要在之前访问过的,如今直接在缓存里面取即可。
  • Control复杂的逻辑控制单元。
    • 当程序含有多个分支的时候,它通过提供分支预测的能力来降低延时。
    • 数据转发。 当一些指令依赖前面的指令结果时,数据转发的逻辑控制单元决定这些指令在pipeline中的位置并且尽可能快的转发一个指令的结果给后续的指令。这些动作需要很多的对比电路单元和转发电路单元。

 

结论:CPU运算速度更快,指令周期短,即便是双精度的浮点数乘法也只需要1~3个时钟周期。

        

      GPU的设计理念:基于吞吐量。

 

ALU,Cache:GPU的特点是有很多的ALU和很少的cache. 缓存的目的不是保存后面需要访问的数据的,这点和CPU不同,而是为thread提高服务的。如果有很多线程需要访问同一个相同的数据,缓存会合并这些访问,然后再去访问dram(因为需要访问的数据保存在dram中而不是cache里面),获取数据后cache会转发这个数据给对应的线程,这个时候是数据转发的角色。但是由于需要访问dram,自然会带来延时的问题。

Control:控制单元(左边黄色区域块)可以把多个的访问合并成少的访问。

GPU的虽然有dram延时,却有非常多的ALU和非常多的thread. 为了平衡内存延时的问题,我们可以中充分利用多的ALU的特性达到一个非常大的吞吐量的效果。尽可能多的分配多的Threads.通常来看GPU ALU会有非常重的pipeline就是因为这样。

        

结论:GPU可以达到很好的吞吐量。

 

对比:CPU擅长逻辑控制,串行的运算。和通用类型数据运算不同,GPU擅长的是大规模并发计算,这也正是密码破解等所需要的。所以GPU除了图像处理,也越来越多的参与到计算当中来。

 


本文链接: http://www.dtmao.cc/news_show_100281.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?