版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
会计学1存储器访问模式一、GPU简介GPU(GraphicsProcessingUnit),即图像处理器,是一种专用图形渲染设备。GPU的功能更新很迅速,平均每一年多便有新一代的GPU诞生,运算速度也越来越快。早期GPU主要用于信号成像和图像处理,GPGPU(GeneralPurposeComputingonGPU)技术提高了GPU通用计算执行效率。GPU实物图:Teslac2050实物图
GPU芯片实物图
第1页/共23页GPU的硬件架构:
右图是NVIDIA
Geforce8800硬件架构图第2页/共23页
GF100架构概览
16个SM(StreamMultiprocessor)每个SM中有32个SP(标量处理器)6个64bitGDDR5存储器控制器第3页/共23页
计算能力2.x的SM(streamingmultiprocessor)的解析图
•32SP(标量处理器),双warp-schduler•64KBsharedmemory/L1cache,可以配置为48KBshared/16KBL1或者16KBshared/48KBL1
第4页/共23页CUDA
CUDA(ComputingUnifiedDeviceArchitecture)是一种不需要借助于图形学API进行GPU通用计算的软硬件架构。NVIDIA在2007年推向市场的并行架构,CUDA并不是一种编程语言,其包括了NVIDIA对于GPGPU的完整解决方案。提供了CUDAC编程语言,类似c语言。CUDA用一种分层的编程模式来组织线程.第5页/共23页
SIMT:SIMD的变形
每个block是SIMT,而block间则是MIMDBlock的宽度是可变的,与硬件无关;而通常SIMD编程模型中的向量宽度是固定的一个warp内的线程行为更类似SIMDBlock内允许存在分支Block内的线程间通过sharedmemory和同步进行通信;而SIMD编程模型内的向量之间通过寄存器通信,不需要显式的同步第6页/共23页
Gridblockthread
•Kernel以包含大量的线程的Grid形式•存在,每一个线程执行相同的程序•Grid由block组成,block内的线程间可以高效通信•Block和thread拥有唯一的ID,用于控制thread操作不同的数据,或者执行不同分支第7页/共23页Warp•Warp并不存在于抽象的CUDA编程模型,而是由硬件决定的,对性能影响较大•在1.x和2.x架构硬件中,一个warp由同一block内相邻的32个线程组成•少数指令,如vote和ballot,是显式的以warp为单位执行。•同一warp内的线程可以认为是“同时”执行的,不需要进行同步也能通过sharedmemory进行通信•分支以warp为单位进行•以warp为单位考虑对存储器的访问的优化,可以获得更高性能第8页/共23页
CUDA开发环境:
---支持CUDA的GPU---NVIDIA设备驱动器---CUDA开发工具(可以从NVIDIA下载,用于开发的工具包)---标准C编译器第9页/共23页CUDA执行模型(1)、调用核程序(有GPU运行的程序)时CPU调用API将显卡端程序的代码传到GPU(2)、block运行在SM上(3)、thread运行在SP上第10页/共23页二、GPU存储器访问模式GPU可寻址的存储器分为:寄存器、全局存储器、本地存储器、共享存储器、常量存储器以及纹理存储器。GPU的CUDA硬件整体架构图如下:第11页/共23页
数据流向:
第12页/共23页编址方式---GPU与CPU独立编址,主机和设备之间的通信是PCI-E总线通信。---在主机端通过API去分配/复制/释放GPU上的存储空间,类似c的内存操作函数。如:cudaMalloc()函数用于分配GPU显存。---GPU不同存储器统一编址空间,GPU内不同存储器使用相同的编址空间,编译器可以解析指针指向哪种类型的存储器---支持64bit寻址空间,最大1TB显存第13页/共23页Register/LocalMemory---线程私有,在kernel程序中不加前缀定义的私有变量---通常情况下被编译为寄存器,当寄存器资源不足时自动使用LocalMemory/cache作为私有变量---寄存器通常无延迟---计算能力2.x硬件上Local
memory(位于显存)有cache机制,但是访问Local
memory同有数百个周期延迟
第14页/共23页SharedMemory---SharedMemory被分为多个组(称为bank),每个组只有一个32bit端口---相邻的32bit存储在相邻的bank中---Block私有,block线程内不同线程通过sharedmemory进行通信---属于片上存储器,带宽较大,延迟很小(无bankconflict时1-2周期)---计算机能力2.x硬件每SM32KBsharedmemory,分为32bank,bank宽度32bit,半速第15页/共23页SharedMemorybankconflict
如果同一个half-warp(1.x)或者warp(2.x)访问了不同端口中的不同数据(即同一个bank中的不同字),那么就会发生bankconflict;---广播可以避免一部分读取时的bankconflict,将数据广播给提出读请求的线程,写操作只有其中的一个线程写。---计算机能力2.x硬件有32个bank,访问64bit型数据时不再有bankconflict。
右图:a、左:以一个字(32位)跨度,线程的一个线性访问,不存在bank冲突b、中:以一个字(32位)跨度,线程的一个线性访问,但是其每两个线程都访问同一个bank,这就2路bank冲突。c、右:同a,不存在冲突
第16页/共23页Globalmemory---通过_device_前缀定义,或者通过API分配---存在于显存中,访问延迟大(400-600周期)---受显存和存储器控制器设计影响,按照一定方式(对齐)访问时才能获得最大带宽---计算机能力2.x硬件上有对globalmemory的cache机制第17页/共23页对齐1)、图上部分:地址从128到256的对齐内存段,线程顺序访问内存,计算能力2.0的设备中只需一次内存操作即可读完此内存段。2)、图中部分:地址从128到256的对齐内存段,线程有部分交叉访问内存,计算能力2.0的设备中只需一内存操作即可读完此内存段。3)、图下部分:线程访问起始地址从比128大到超过256的非对齐内存段,线程顺序访问内存,计算能力2.0的设备中需两次内存操作即可读完此内存段。
注:warp执行指令时,会将warp中多个线程的内存访问集中组织成一次或多次内存操作,操作数依赖于每个线程能访问的字大小以及内存的分配方式。第18页/共23页Texturememory---定义纹理参考后与CUDAarray或者Globalmemory绑定---存在于显存,有texturecache---利用二维三维数据的数据局部性,访问相邻元素性能较好---可以利用GPU中图形硬件单元进行一些处理,不占用可编程计算性能,计算机能力2.x可写。---纹理存储器在每个GPC(图像处理簇)上有片上纹理缓存---访问不需要遵循特定的优化规则---寻址的计算由特定的硬件单元实现---纹理缓存提供将输入的8位或者16位整型映射到[0.0,1.0]或者[-1.0,1.0]的取值空间第19页/共23页
纹理存储器的具体操作:
纹理引用:指定纹理在纹理存储器中的位置
纹理拾取:在给定纹理引用和纹理坐标后,从纹理上采样纹理元的过程
纹理坐标:纹理元在纹理上的位置由纹理坐标来描述
纹理寻址:由硬件自动完成第20页/共23页Constantmem
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 氟化物释放树脂稳定性
- 2024年度某公司与某航空公司关于旅客运输的合同
- 广告营销合同范本
- 2024年度版权购买合同范例
- 《互联网使用对劳动力就业搜寻的影响效应研究》
- 超前支护合同范本
- 《基于机器视觉的丙烯聚合过程液位检测系统设计》
- 新兴际华集团招聘笔试真题2023
- 佛山护肤品加盟合同范本
- 2024年度重庆医疗器械采购租赁合同
- 挡土墙基础混凝土检验批质量检验记录表标准范本
- 八年级地理教案-中图版八年级地理上册《居民与聚落》教案
- 中国气象站点分布信息
- 2022年军队文职人员招聘考试公共科目真题
- 身份验证系统整体解决方案
- 汽车技术人员奖惩制度范本
- 统计造假弄虚作假自查范文(通用5篇)
- 互联网背景下小学生心理健康教育策略 论文
- 传统节日文化在幼儿园课程中的应用研究 论文
- 《机械设计基础A》机械电子 教学大纲
- 2022宁夏共享集团公司校园招聘48人上岸笔试历年难、易错点考题附带参考答案与详解
评论
0/150
提交评论