gpu并行计算与cuda编程01

gpu并行计算与cuda编程01

ID:27749935

大小:4.31 MB

页数:47页

时间:2018-12-05

gpu并行计算与cuda编程01_第1页
gpu并行计算与cuda编程01_第2页
gpu并行计算与cuda编程01_第3页
gpu并行计算与cuda编程01_第4页
gpu并行计算与cuda编程01_第5页
资源描述:

《gpu并行计算与cuda编程01》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、GPU并行计算与CUDA编程第1课DATAGURU专业数据分析社区第一版讲师罗韵(WeChat:LaurenLuoYun)本周介绍内容 0.课程参考资料 1.GPU并行计算的原理与意义 2.CUDA硬件环境,体系结构,常见的显卡型号与性能,显卡的选择与显存需求估计 3.CUDA软件环境介绍,包括平台、架构、开发工具和热点技术 4.租用AWS云服务的环境搭建步骤 5.本地机器的环境搭建步骤DATAGURU专业数据分析社区第一版讲师罗韵(WeChat:LaurenLuoYun)0.课程参考资料DATAGURU专业数据分析社区第一版讲师罗韵(WeChat:La

2、urenLuoYun)0.GPU并行计算的原理与意义 CPU和GPU的区别 图片来自NVIDIACUDA文档。其中绿色的是计算单元,橙红色的是存储单元,橙黄色的是控制单元。 GPU采用了数量众多的计算单元和超长的流水线,但只有非常简单的控制逻辑并省去了Cache。而CPU不仅被Cache占据了大量空间,而且还有有复杂的控制逻辑和诸多优化电路,相比之下计算能力只是CPU很小的一部分DATAGURU专业数据分析社区第一版讲师罗韵(WeChat:LaurenLuoYun) CPU的发展:处理器越来越小,处理速度越来越快,处理核变多。DATAGURU专业数据分析

3、社区第一版讲师罗韵(WeChat:LaurenLuoYun) 为什么CPU不可以一直沿着趋势发展下去?DATAGURU专业数据分析社区第一版讲师罗韵(WeChat:LaurenLuoYun) 性能(低延时性Latency)与吞吐量(Throughput) Cache,localmemory:CPU>GPU Threads(线程数):GPU>CPU Registers:GPU>CPU多寄存器可以支持非常多的Thread,thread需要用到register,thread数目大,register也必须得跟着很大才行。DATAGURU专业数据分析社区第一版讲师

4、罗韵(WeChat:LaurenLuoYun)CPU:基于低延时性设计DATAGURU专业数据分析社区第一版讲师罗韵(WeChat:LaurenLuoYun) ALU:CPU有强大的ALU(算术运算单元),它可以在很少的时钟周期内完成算术计算。 当今的CPU可以达到64bit双精度。执行双精度浮点源算的加法和乘法只需要1~3个时钟周期。 CPU的时钟周期的频率是非常高的,达到1.532~3gigahertz(千兆HZ,10的9次方). Cache:大的缓存也可以降低延时。保存很多的数据放在缓存里面,当需要访问的这些数据,只要在之前访问过的,如今直接在缓存

5、里面取即可。 Control:复杂的逻辑控制单元。 当程序含有多个分支的时候,它通过提供分支预测的能力来降低延时。 数据转发。当一些指令依赖前面的指令结果时,数据转发的逻辑控制单元决定这些指令在pipeline中的位置并且尽可能快的转发一个指令的结果给后续的指令。这些动作需要很多的对比电路单元和转发电路单元。DATAGURU专业数据分析社区第一版讲师罗韵(WeChat:LaurenLuoYun)GPU:基于吞吐量设计DATAGURU专业数据分析社区第一版讲师罗韵(WeChat:LaurenLuoYun) ALU,Cache:GPU的特点是有很多的ALU和

6、很少的cache.缓存的目的不是保存后面需要访问的数据的,这点和CPU不同,而是为thread提高服务的。如果有很多线程需要访问同一个相同的数据,缓存会合并这些访问,然后再去访问dram(因为需要访问的数据保存在dram中而不是cache里面),获取数据后cache会转发这个数据给对应的线程,这个时候是数据转发的角色。但是由于需要访问dram,自然会带来延时的问题。 Control:控制单元(左边黄色区域块)可以把多个的访问合并成少的访问。 GPU的虽然有dram延时,却有非常多的ALU和非常多的thread.为了平衡内存延时的问题,我们可以中充分利用多

7、的ALU的特性达到一个非常大的吞吐量的效果。尽可能多的分配多的Threads.通常来看GPUALU会有非常重的pipeline就是因为这样。 CPU擅长逻辑控制,串行的运算。和通用类型数据运算不同,GPU擅长的是大规模并发计算,这也正是密码破解等所需要的。所以GPU除了图像处理,也越来越多的参与到计算当中来。DATAGURU专业数据分析社区第一版讲师罗韵(WeChat:LaurenLuoYun) 什么类型的程序适合在GPU上运行? 1.计算密集型的程序。 2.易于并行的程序。GPU其实是一种SIMD(SingleInstructionMultipleDa

8、ta)架构。DATAGURU专业数据分析社区第一版讲师罗韵(WeChat:Lau

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。