GPU并行计算与CUDA编程01.pdfVIP

  1. 1、本文档共44页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
GPU并行计算与CUDA编程01

第一版 讲师 罗韵 (WeChat:LaurenLuoYun) DATAGURU专业数据分析社区 GPU并行计算与CUDA编程 第1课 第一版 讲师 罗韵 (WeChat:LaurenLuoYun) DATAGURU专业数据分析社区 本周介绍内容 ? 0. 课程参考资料 ? 1. GPU并行计算的原理与意义 ? 2. CUDA硬件环境,体系结构,常见的显卡型号与性能,显卡的选择与显存需求估计 ? 3. CUDA软件环境介绍,包括平台、架构、开发工具和热点技术 ? 4. 租用AWS云服务的环境搭建步骤 ? 5. 本地机器的环境搭建步骤 第一版 讲师 罗韵 (WeChat:LaurenLuoYun) DATAGURU专业数据分析社区 0.课程参考资料 第一版 讲师 罗韵 (WeChat:LaurenLuoYun) DATAGURU专业数据分析社区 1. GPU并行计算的原理与意义 ? CPU和GPU的区别 ? 图片来自NVIDIA CUDA文档。其中绿色的是计算单元,橙红色的是存储单元,橙黄色的是控制单元。 ? GPU采用了数量众多的计算单元和超长的流水线,但只有非常简单的控制逻辑并省去了Cache。而CPU不仅被Cache 占据了大量空间,而且还有有复杂的控制逻辑和诸多优化电路,相比之下计算能力只是CPU很小的一部分 第一版 讲师 罗韵 (WeChat:LaurenLuoYun) DATAGURU专业数据分析社区 ? CPU的发展:处理器越来越小,处理速度越来越快,处理核变多。 第一版 讲师 罗韵 (WeChat:LaurenLuoYun) DATAGURU专业数据分析社区 ? 为什么CPU不可以一直沿着趋势发展下去? 第一版 讲师 罗韵 (WeChat:LaurenLuoYun) DATAGURU专业数据分析社区 ? 性能(低延时性Latency)与吞吐量(Throughput) ? Cache, local memory: CPU GPU ? Threads(线程数): GPU CPU ? Registers: GPU CPU 多寄存器可以支持非常多的Thread,thread需要用到register,thread数目大,register也必须 得跟着很大才行。 ? SIMD Unit(单指令多数据流,以同步方式,在同一时间内执行同一条指令): GPU CPU。 第一版 讲师 罗韵 (WeChat:LaurenLuoYun) DATAGURU专业数据分析社区 CPU:基于低延时性设计 第一版 讲师 罗韵 (WeChat:LaurenLuoYun) DATAGURU专业数据分析社区 ? ALU:CPU有强大的ALU(算术运算单元),它可以在很少的时钟周期内完成算术计算。 ? 当今的CPU可以达到64bit 双精度。执行双精度浮点源算的加法和乘法只需要1~3个时钟周期 。 ? CPU的时钟周期的频率是非常高的,达到1.532~3gigahertz(千兆HZ, 10的9次方). ? Cache:大的缓存也可以降低延时。保存很多的数据放在缓存里面,当需要访问的这些数据,只要 在之前访问过的,如今直接在缓存里面取即可。 ? Control:复杂的逻辑控制单元。 ? 当程序含有多个分支的时候,它通过提供分支预测的能力来降低延时。 ? 数据转发。 当一些指令依赖前面的指令结果时,数据转发的逻辑控制单元决定这些指令在 pipeline中的位置并且尽可能快的转发一个指令的结果给后续的指令。这些动作需要很多的对 比电路单元和转发电路单元。 第一版 讲师 罗韵 (WeChat:LaurenLuoYun) DATAGURU专业数据分析社区 GPU:基于吞吐量设计 第一版 讲师 罗韵 (WeChat:LaurenLuoYun) DATAGURU专业数据分析社区 ? ALU,Cache:GPU的特点是有很多的ALU和很少的cache. 缓存的目的不是保存后面需要访问的 数据的,这点和CPU不同,而是为thread提高服务的。如果有很多线程需要访问同一个相同的数据 ,缓存会合并这些访问,然后再去访问dram(因为需要访问的数据保存在dram中而不是cache里 面),获取数据后cache会转发这个数据给对应的线程,这个时候是数据转发的角色。但是由于需 要访问dram,自然会带来延时的问题。 ? Control:控制单元(左边黄色区域块)可以把多个的访问合并成少的访问。 ? GPU的虽然有dram延时,却有非常多的ALU和非常多的thread. 为了平衡内存延时的问题,我们可 以

文档评论(0)

l215322 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档