- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CUDA-GPU-入门介绍剖析
--An introduction to beginners GPU CUDA 内容 1 GPU高性能计算 2 CUDA架构 3 CUDA环境搭建 4 CUDA简单例子 1. GPU高性能计算 GPU: 从图形处理到通用计算 GPU: Graphic Processing Unit GPU为高度并行的实时3D渲染计算而设计, 高GFLOPS , 高带宽 3D渲染技术及3D API的发展, 促进GPU向通用计算处理器发展 NVIDIA GPU为通用计算专门优化设计, 于2007年推出CUDA GPU多”核”:SM 真正意义的变革 通用计算 重要突破 GPU通用计 算开始出现 GeForce 8800 GeForce 6800 GeForce 3 GeForce 256 世界上第一个GPU 1. GPU高性能计算 GPU VS CPU: 计算能力 8x double precision ECC L1, L2 Caches 1 TF Single Precision 4GB Memory NVIDIA GPU X86 CPU 1. GPU高性能计算 GPU VS CPU: 硬件体系 目标: 最小的指令延迟 巨大的缓存 复杂的控制逻辑 目标: 最大吞吐量 更多寄存器、高带宽 通过线程轮换隐藏延迟 多个线程共享控制逻辑 1. GPU高性能计算 GPU应用领域 用同一计算方法对很大量的数据进行并行计算 数据相关度低 计算密度大,计算所花的时间比数据存储的时间大得多 1. GPU高性能计算 GPU关键概念 SM: Stream Multiprocessor SP: Stream Processor 每个SM包含8个SP, 由SM取指, 解码, 发射到各个SP, GPU可看作是一组SM SMEM: shared memory, GPU片内每个SM所占有的高速存储器 Global memory: GPU板载显存 2. CUDA架构 CUDA– Compute Unified Device Architecture 由NVIDIA 2007年推出的通用并行计算架构 第一种不需要借助图形学API就可以使用类C语言极性通用计算的开发环境和软件体系 在采用了统一架构的GPU上运行 NVIDIA提供完全免费的CUDA开发工具包和SDK 对标准C语言的简单扩展, 以最小的扩展集实现CUDA架构 2. CUDA架构 存储器模型 Thread私有register (RW) Thread私有local memory (RW) Block的shared memory (RW) Grid的global memory (RW) Grid的constant memory (RO) Grid的texture memory (RO) Host可以通过API完成显存与主存交互 2. CUDA架构 线程组织模型 每个内核程序 (Kernel) 包含非常多的线程 所有线程执行相同的顺序程序 层次结构:Grid ? Block ? Thread 线程被划分成线程块 (Block) 同一线程块内的线程可以通过共享SM资源相互协作 每个线程和线程块拥有唯一ID 通过内建变量读取 2. CUDA架构 线程映射 Thread ? SP Block ? SM Grid ? GPU 把GPU看作一个包含很多个核心的多核处理器 有自己的本地存储器 大量的线程并行执行 每个线程拥有私有变量/存储区域 线程之间拥有共享的存储区域 与CPU的差别: GPU的线程是轻量级的(代码少,硬件轮换,资源负担小);需要很大量的线程才能使GPU满载 2. CUDA架构 CPU/GPU异构并行模型 由CPU端 (主机端) 传送参数及配置Kernel的执行 (Block, Thread数量, 尺寸等) Kernel在GPU (设备端) 上执行 显存分配, 显存与PC主存间的交互通过API完成 2. CUDA架构 CUDA C扩展: 编译器nvcc CUDA源程序 -- CU文件 编译器驱动 分离主机端源代码和设备端源代码 编译设备端源代码到GPU汇编代码(PTX)或GPU二进制代码(CUBIN) 把最终GPU代码包裹在主机端源代码中 CUDA C扩展: API Driver API 调用Kernel较繁琐 Runtime API 较方便 2. CUDA架构 CUDA C扩展: 函数限定符 __global__ GPU Kernel代码, 由CPU发起, 返回void, 不能由其它Kernel调用 __device__ 由GPU Kernel调用的函数, 不能由CPU发起 __host__ 在CPU上执行的函数 CUDA C扩展: 变量限定
您可能关注的文档
最近下载
- GP-150中文说明书.pdf VIP
- 中文说明书-船舶自动识别系统(AIS)FA-150版.docx VIP
- FAR21X7_28X7雷达中文操作说明书.pdf VIP
- 2025届广东深圳市物理高一第一学期期末教学质量检测试题含解析.doc VIP
- 广东高一物理第一学期期末试题.doc VIP
- 水资源及其利用——人类拥有的水资源及其分布.pdf VIP
- FURUNO古野OZS56490D_NX700使用说明书.pdf VIP
- 青岛啤酒股份有限公司成本控制存在问题及对策研究.doc
- 生物安全柜使用与维护保养记录表.doc VIP
- 输变电工程施工质量验收统一表式(变电工程电气专业).docx VIP
文档评论(0)