图形硬件与GPU体系结构修改.pptx

上传人:莉*** 文档编号:76533954 上传时间:2023-03-11 格式:PPTX 页数:70 大小:3.57MB
返回 下载 相关 举报
图形硬件与GPU体系结构修改.pptx_第1页
第1页 / 共70页
图形硬件与GPU体系结构修改.pptx_第2页
第2页 / 共70页
点击查看更多>>
资源描述

《图形硬件与GPU体系结构修改.pptx》由会员分享,可在线阅读,更多相关《图形硬件与GPU体系结构修改.pptx(70页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、摘要图形硬件的历史早期GPGPU通用计算 现代GPU体系结构 基于现代GPU的编程模型展望第1页/共70页OpenGL三维图形流水线Vertex ProcessingFragment ProcessingRasterizerFramebufferTexture第2页/共70页SGI Infinite Reality产品1996发售,SGI图形设备的巅峰之作Tile-based Rendering第3页/共70页HP VISUALIZE FX698年商业发售分离式图形卡典范光栅加速卡(Rast)几何加速卡(GA)纹理加速卡(TA)第4页/共70页98年商业发售Intel第一块图形卡单芯片图形卡无

2、几何加速单元Intel 740 第5页/共70页99年商业发售第一块集成TnL几何定点变换单元的消费级图形卡S3G Savage 2000第6页/共70页传统GPU图形流水线在2000年前后,图形加速卡完成了从分离式元件和分离式板卡到单芯片图形硬件的整合。图形硬件翻开了新的一页,开始了可编程化的征途。u1999年DirectX7(增加TnL)u2000年 DirectX8(增加Vertex shader)u2002年 DirectX9(增加Pixel shader)u2004年 DirectX9.0c(增加动态分支)u2006年DirectX10DirectX 9.0第7页/共70页传统GPU

3、体系结构Split-Shader Architecture(SSA)Post-vertex CacheHierarchical-ZFast-Z ClearZ/Color CompressionPerfetch Texture Cache 第8页/共70页Matrox Parhelia 512第9页/共70页3Dlabs P10第10页/共70页NV30(nVIDIA Gefroce5)第11页/共70页DX9 GPU通用计算的开始DX9.0c-class(NV4X)GPU才引入动态分支操作(Dynamic Control)Z Buffer+Render to Texture+Clip可以用来模

4、拟动态分支操作第12页/共70页传统静态分支架构下的GPGPU计算基于GPU的MPEG2运动估计算法第13页/共70页Shader Unit对通用计算支持的改进HLSL程序映射到下面三个模块中:PSU(Pixel Shader Unit)TMU(Texture Mapping Unit)BP(Branch Processor)第14页/共70页图灵完备(Turing Completeness)一条无限长的纸带 TAPE。(Data Memory)一个读写头 HEAD。(Load/Store)一套控制规则 TABLE。它根据当前机器所处的状态以及当前读写头所指的格子上的符号来确定读写头下一步的动

5、作,并改变状态寄存器的值,令机器进入一个新的状态。(Program,包含Branch,Add)一个状态寄存器。(Program Counter)第15页/共70页NV40(nVIDIA Gefroce6)NV40与SGI Infinity Reality体系结构的变化?第16页/共70页NV47(nVIDIA Gefroce7)Split Shader Unit 架构的巅峰之作多通道存储器技术?Graphics programVertex processorsFragment processorsPixel operationsOutput image第17页/共70页DX10 Unified

6、 Shader ArchitectureDX10带来了什么?USA(统一渲染架构)Float32精度不限制数量的Dynamic Flow Control4096 Temp Register大于64K的着色程序指令长度DX10还差什么?通信(Communication)访存(Memory access)第18页/共70页Shader Unit的改进基于FIFO的Shader Unit(传统GPU)第19页/共70页Shader Unit的改进基于Thread的Shader Unit(DX10级别GPU)第20页/共70页NV50架构图编程模型:流计算(Stream Computing)什么是流计

7、算?流计算主要解决什么问题?NV50在传统流计算上增加了什么限制?第21页/共70页流计算机基本概念流计算起源于传统的DSP应用,典型的应用:视频编解码数字图像处理模式识别计算机图形处理软件无线电以上流计算的特点:可实现的硬件/软件流水线第22页/共70页传统流计算的特点:Stream processing is especially suitable for applications that exhibit three application characteristics:Compute Intensity,the number of arithmetic operations per

8、I/O or global memory reference.In many signal processing applications today it is well over 50:1 and increasing with algorithmic complexity.Data Parallelism exists in a kernel if the same function is applied to all records of an input stream and a number of records can be processed simultaneously wi

9、thout waiting for results from previous records.Data Locality is a specific type of temporal locality common in signal and media processing applications where data is produced once,read once or twice later in the application,and never read again.Intermediate streams passed between kernels as well as

10、 intermediate data within kernel functions can capture this locality directly using the stream processing programming model.第23页/共70页传统流计算处理器Imagine Stream Processor第24页/共70页传统流计算处理器Imagine architecture is the three tiered storage bandwidth hierarchya streaming memory system(2.1GB/s),a 128KB stream

11、register file(25.6GB/s),direct forwarding of results among arithmetic units via local register files(435GB/s).Imagine is able to sustain performance of up to 18.3GOPS on key applications.Imagine is designed to fit on a 2.56cm2 0.18um CMOS chip and to operate at 400MHz.第25页/共70页传统流计算处理器不同应用在各个存储器层次上的

12、带宽需求:第26页/共70页CUDA流计算模型CUDA的存储器架构与传统的流处理器存储架构的区别?在PTX上面的体现?第27页/共70页Shared Memory /Loop over all the sub-matrices of A and B /required to compute the block sub-matrix for(int a=aBegin,b=bBegin;a=aEnd;a+=aStep,b+=bStep)/Declaration of the shared memor y array As used to /store the sub-matrix of A _sh

13、ared_ float AsBLOCK_SIZEBLOCK_SIZE;/Declaration of the shared memor y array Bs used to /store the sub-matrix of B _shared_ float BsBLOCK_SIZEBLOCK_SIZE;/Load the matrices from device memor y /to shared memor y;each thread loads /one element of each matrix AS(ty,t x)=Aa+wA*ty+t x;BS(ty,t x)=Bb+wB*ty+

14、t x;/Synchronize to make sure the matrices are loaded _syncthreads();从Device memory到Shared memory CUDA PTX$Lt_0_2818:/Loop body line 71,nesting depth:1,estimated iterations:unknown.loc28860ld.global.f32%f2,%rd23+0;st.shared.f32%rd14+0,%f2;.loc28870ld.global.f32%f3,%rd19+0;st.shared.f32%rd15+0,%f3;.l

15、oc28900bar.sync 0;第28页/共70页Texture Cache Access_global_ voidtransformKernel(float*g_odata,int width,int height,float theta)/calculate normalized texture coordinates unsigned int x=blockIdx.x*blockDim.x+threadIdx.x;unsigned int y=blockIdx.y*blockDim.y+threadIdx.y;float u=x/(float)width;float v=y/(flo

16、at)height;/transform coordinates u-=0.5f;v-=0.5f;float tu=u*cosf(theta)-v*sinf(theta)+0.5f;float tv=v*cosf(theta)+u*sinf(theta)+0.5f;/read from texture and write to global memor y g_odatay*width+x=tex2D(tex,tu,tv);#endif/#ifndef _SIMPLETEX TURE_KERNEL_H_.tex.u64 tex;mov.f32%f132,%f80;mul.f32%f133,%f

17、82,%f73;mad.f32%f134,%f75,%f38,%f133;mov.f32%f135,0f3f000000;/0.5add.f32%f136,%f134,%f135;mov.f32%f137,0f00000000;/0mov.f32%f138,0f00000000;/0tex.2d.v4.f32.f32%f139,%f140,%f141,%f142,tex,%f132,%f136,%f137,%f138;第29页/共70页基于AMD CAL器件的流计算模型LDS(Local Data Share)=Memory Read and Write Cache在存储系统上与CUDA架构的

18、区别?第30页/共70页基于Fermi的CUDA 3.0架构如何增加层次化存储器架构的效率?如何改进Cache一致性协议?第31页/共70页Larrabee 上的存储架构 与Fermi GPU的区别?第32页/共70页第33页/共70页存储系统传统GPU中的CacheFixed funtion pipelineIndexed Vertex CachePost-vertex CacheTexture Slot CacheZ/Stencil CacheColor CacheShader UnitConstant CacheTexture Cache第34页/共70页GPU中的总线哪一级流水线需要最

19、高的优先级?第35页/共70页3D图形硬件之前的时代Ray-casting技术代表作:德军总部3D第36页/共70页第一代Voodoo GPU架构 4-channel memory controller第37页/共70页Multi-channel memory controller单一寻址空间的Video Memory伴随着Early-Z/Z cull技术 总线复杂度的压力第38页/共70页存储需求的变更:Anisotropic FilteringMIPMAP的作用MIPMAP技术的缺陷第39页/共70页,Normal第40页/共70页,LOD Bias=-3 第41页/共70页,4X AA第

20、42页/共70页,8X Aniso第43页/共70页存储需求的变更:Relief map有什么不同?Normal mapParallax mapRelief map第44页/共70页存储需求的变更:Relief map凹凸铁图对延迟容忍的要求思考:总线带宽和总线延迟的关系?第45页/共70页,第46页/共70页PS2 Memory System第47页/共70页GameCube Memory System第48页/共70页Xbox Memory System第49页/共70页Wii Memory System第50页/共70页Xbox360 Memory SystemWii Memory Sy

21、stemWii Memory SystemWii Memory System第51页/共70页处理器的融合第52页/共70页嵌入式 GPU应用平台:视频游戏机掌上游戏机机顶盒手机航空航天应用特点:硬件资源有限特定硬件优化第53页/共70页IMR(立即渲染模式)第54页/共70页TBR(区域渲染模式)第55页/共70页Mobile GPU帧缓冲尺寸:640 x 480Tile尺寸:(16,32,64)x(16,32,64)最佳TILE尺寸:32 x 16 像素区域第56页/共70页传统TBR GPU体系结构第57页/共70页工业界的TBR GPU桌面领域Larrabee(纯软件图形流水线)嵌入式

22、领域 视频游戏机Nintendo GameCube:Flipper (ATI)Nintendo WiiSony PS2:Xbox360:Xeons(ATI R500)第58页/共70页Mobile GPU第59页/共70页ARM Mali55第60页/共70页Imagination PowerVR SGX第61页/共70页Vivante GC ScalarMorphic第62页/共70页三星电子 FIMG-3DSE v1.5第63页/共70页三菱 Z3D第64页/共70页展望 第65页/共70页TSMC 80mm2(300mm Wafer)第66页/共70页TSMC 140mm2(300mm Wafer)第67页/共70页TSMC 260mm2(300mm Wafer)第68页/共70页TSMC 450mm2(300mm Wafer)第69页/共70页感谢您的观看!第70页/共70页

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > PPT文档

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁