版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、北京科技大学高等计算机体系结构文献综述题目:GPU的发展研究学 院计算机与通信工程学院班级124班学号 S20121170姓名陈叁时间 2012年11月02日引言随着半导体工艺的发展,芯片上集成的晶体管数目按照摩尔定律增加,各种处理器的存储和计算能力也因此不断提高。作为最常用的两类处理器芯片,CPU和GPU的性能发展呈现不同的规律。CPU是计算机的主控处理部件,需要应对各种复杂的控制过程,追求的标量性能注重通用性,因此在其芯片体系结构设计时,不得不将大量的芯片资源用于分支预测、乱序 执行等复杂的控制逻辑,从而限制了其计算性能的提升。而 GPU原本只负责加速图形计算, 功能相对比较单一,芯片的控
2、制逻辑比较简单,主要的芯片资源都用于提升计算性能,因此 其计算能力发展更为迅速。例如,AMD公司2009年第一季度发布的专业级流处理GPUFireSt ream 9270 i的单精度浮点峰值性能达到1.2T Flo ps,而Intel公司顶级的Core2 Ex tr eme 9650四核处理器的浮点 处理能力仅有96GFlo ps,可见在计算性能方面,GPU要高出CPU整整一个数量级。计算性 能增长的同时,GPU的存储性能也在不断提升,2 4GB的存储容量、256 512位宽的存储 总线都为GPU发挥出强大的计算能力提供了充分的保证。除了计算性能外,从性/价比和性能/功耗比上看,GPU相对于通
3、用CPU同样拥有明显的优势。这些特性都使得GPU成为 搭建超级计算机的良好选择,可以在有限的系统规模和金钱开销的限制下达到非常高的峰 值计算性能,因此越来越受到高性能计算领域的关注。计算性能不断提升的同时,限制GPU广泛应用的另一制约因素 )可编程性,也在不断提高。早期的GPU仅负责图形加速,流水 线的功能固定,只能执行有限的几个操作以完成图像的生成。硬件工艺的进步使得GPU内处理单元的结构越来越复杂 ,功能也越来越灵活,其流水线具备了执行用户自定义程序的能 力,从而具备了初步的可编程性。从最初的底层图形API发展到现在高度抽象的 CUDA0、Broo k + 司以及OpenCL 4, GPU
4、的可编程性得到了极大的提升 ,已经具备了开发非图形领 域应用的基本能力,GPU上的通用计算(General Purpose computat io n on GPU s, 简称 GPGPU 5)也成为体系结构、编程及编译等领域热点的研究方向之一。二、 C P U/GP U协同并行计算研究进展a) GP3义及相关技术GPU文全称(Graphic ProcessingUnit), 中文翻译为“图形处理器"。GPUl相对于CPU勺一个概念,由于在现代的计算机中图形的处理变得越来越重要,需要一个专门的图形的核心处理器。GP电显示卡的“大脑”,它决定了该显卡的档次和大部分性能,同时也是2D显示
5、卡和3D显示卡的区别依据。 GPU使显卡减少了对C P U 的依赖,并进行部分原本CPU勺工作,尤其是在3D图形处理时。GP所采用的核心技 术有硬体T&L、立方环境材质贴图和顶点混合、纹理压缩和凹凸映射贴图双重纹理四像素256位渲染引擎等,而硬体T&战术可以说是G P U的标志。T& L技术是最近在图形加速卡上都可以看得到的规格名称之一,这个名词的原来意义是:Transforming以及Lighting ,光影转换。在图形加速卡中,T&L的最大功能是处理图形的整体角度旋转以及光源阴影等三维效果。3D图上有许多的连结点,每一个连结点都可视为一条线的转折点,通过这些
6、连结点,图形芯片可以很清楚地将整个对象的结构辨识出来。然而,这些连结点在这张3D殳计图上的位置是固定不动的,换句话说,不管我们从任何一个角度来看这个对象, 连结点的位置并没有变动,变动的只有角度的不同。不过,对象图案若只进行到Transforming的阶段,在对象的表面也只有连结点而已,并没有加上颜色色块或任何材质的贴图表现,因此,很像是立体的3腌视图。一般来说,T& L的效能常用单位时间内所能处理多少个多边形的连结点变化以及光源运算为基准。像 nVidia的GeForce 2便能在每秒钟处理2500万个多边形,而有 的产品甚至能达到3000万个多边形的效能。纹理压缩中将压缩后的数据存
7、储进显存并不是终结。重要的是需要用显示芯片把这些压缩后的数据进行解压缩,再经过运算贴图到3D莫型上。这个过程就需要显示芯片在硬件上支持了,如果不支持,对于压缩后的数据无法识别,照样不能完成纹理 压缩,也不能发挥出纹理压缩的优势。凹凸贴图(bump mapping),又称为皱面贴图,是一项计算机图形学技术,在这项 技术中每个待渲染的像素在计算照明之前都要加上一个从高度图中找到的扰动。这 样得到的结果表面表现更加丰富、细致,更加接近物体在自然界本身的模样 b) 协同计算概念CPU/GPU协同并行计算,其关键在于如何实现两者的高效“协同”。从国内外大量的研究工作来看,“协同”分为两个层次:1) CP
8、 U仅负责管理G P U的工作,为GPU 提供数据并接收GPU传回的数据,由GPU 承担整个计算任务;2)除管理GPU外,CPU还负责一部分计算任务,与GPU共同完成计算。第一层次的“协同”比较简单,CPU与GPU 间分工明确,但浪费了宝贵的CPU计算资源。如IBM 的Power7处理器具有32个核心,因此CPU也具有强大的 计算能力。可见,第二层次的“协同”是未来协同并行计算的发展方向三、GPGPO系结构目前可以生产支持通用计算的 GPU厂家主要有AMD、NVIDIA和Intel。我们将简要介绍这陈希2012年11月2日三个厂商目前主流 GPU的核心体系结构。1. AMD: APU为进一步提
9、升处理器的工作效率,AMD公司将CPU和GPU的核心进行融合(Fusion),推出了 APU7 ( Accelerated Processing Unit s)系列处理器,以加速多媒体和向量处理能力。业界有观点认为,这种融合的体系结构是未来处理器的发展方向。SEMD cnu jncpijnorminterfilesv si cm mem or v图1 AMD APU结构示意图从图1可以看出,APU处理器将多核的x 86 CPU核心、GPU处理器核心(SIMD引擎阵 列)、高速总线以及存控融合在一块单一芯片上,可以实现数据在不同处理核心间的高速传输,大大缓解了目前CPU和GPU之间的通信受限于外
10、部总线的问题。2. NVIDIA: FermiFermi是NVIDIA公司推出的最新一代 GPU,提供了强大的双精度浮点计算能力。Fermi较之以往GPU的不同之处在于:首先,为面向对数据精确度要求较高的应用,Fermi首次在GPU勺存储器中引入了 ECC校验的功能;其次,Fermi在保持了主流GPU中使用 的Shared Memory作为片上存储层次外,还首次引入了通用的数据 Cache,以更好地支 持通用计算。Fermi中的Cache包含被SM私有的L1 Cache和被所有SM享的L2 Cache。 此外,Fermi中的Shared Memory和Cache可以通过配置互相转化。最后 ,F
11、ermi支持 多Kernel同时执行。图2 NVIDIA Fermi 体系结构示意图图2给出了 Fermi的体系结构框图。图中包含16个SM,分布在共享的L2 Cache周围,每SM均包含L1 Cache、寄存器文件等私有存储资源,32个流处理核心构成的计算阵列和线程调度单元。处理器的外围则分布着DRAM Host和线程调度等接口。值得注意的是,Fermi之前的GPU中SM内大多包含8个流处理核心,如GT 200,因此需要4拍才能发射一个w arp,而Fermi中将流处理核心数提升至32个,而且采用双发射技术,使得每拍可以发射2个 warp,极大提升了线程发射效率。四、CUD陶介CU DA 全
12、称统一计算设备框架 (Compute UnifiedDevice Architecture,简称 CU DA ), 是NVIDIA公司针对其GPU设计提出的GPGPU程卞II型,它也以笊言为基础,降低了编程难 度。在CUDA计算模型中,应用程序分为host端和device端,前者是指运行于CPU上的部 分,后者则是运行于GPU上的部分,这部分代码称为核心(Kernel)函数。CPU代码准备好 数据后,复制到显卡的存储器中,再调用核心函数进行执行,执行完毕后再由CPU代码将 计算结果拷贝回主存。在CU DA计算模型下,GPU执行的最小单位是线程,多个线程组成一个线程块,线程块中线程可以共享一片存
13、储器,并以任意顺序执行,在硬件资源受限的情况下甚至可以串行执行。一个核心程序由一个或多个线程块组成,一个应用则由若干个核心程序构成。block(2.0)blockKernel nthread(n, I)thread(n, n)图3 CUDA计算模型示意图从CUDA体系结构的组成来说,包含了三个部分:开发库、运行期环境和驱动。开发库是基于CUDA技术所提供的应用开发库。目前CUDA的1.1版提供了两个标准的数学运算库FFT (离散快速傅立叶变换)和CUBLAS离散基本线性计算)的实现。这两个数学运算库所解决的是典型的大规模的并行计算问题,也是在密集数据计算中非常常见的计算类型。开发人员在开发库的基础上可以快速方便的建立起自己的计算应用此外开发人员也可以在C U DA的技术基础上实现出更多的开发库。运行期环境提供了应用开发接口和运行期组件,包括基本数据类型的定义和各类计算、类型转换、内存管理、设备访问和执行调度等函数。基于C UDA开发的程序代码在实际执行中分为两种,一种是运行在C户U上的宿主代码,一种是运行在G p U上的设备代码。不同类型的代码由于其运行的物理位置不同,能够访问到的资源不同因此对应的运行期组件也分为公共组件、宿主组件和设备组件三个部分,基本上囊括了所有在GPGPU发中所需要的功能和能够使用到的资源接口,开发人员可以通过运行期环境的编
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度农户农业产业链供应链融资合同3篇
- 2024年乳业集团定制化牛奶生产与销售合同2篇
- 2024年度养殖场产业链拓展合同:养殖上下游产业深度合作与拓展3篇
- 2024年度三方互联网医疗股份合作与平台建设合同3篇
- 2024年农产品代加工与农产品加工标准制定合作合同3篇
- 2024年度文化旅游资源开发与运营采购框架协议范本3篇
- 企业创新能力与核心技术分析汇报
- 2024年度消防安全评估与监测合同6篇
- 体育健身与运动知识普及
- 互联网金融模式与风险管理策略
- 广开(含解析)《形式与政策》你所从事的行业和工作《决定》中提出怎样的改革举措
- (完整版)设计的进度计划保证措施
- 7的乘法口诀说课--完整版PPT课件
- 2022机械设备安全管理及保证措施
- 新风系统安装合同模板
- 狂暴战一键输出宏
- 传热学大作业报告-二维稳态导热
- 理正深基坑7.0基坑支护计算例题排桩内支撑3
- 预拌混凝土企业质量管理体系·程序文件
- 龙门吊操作规程及管理制度
- 郑修1011美沙酮社区维持治疗工作情
评论
0/150
提交评论