泡泡网显卡频道 PCPOP首页      /      显卡     /      评测    /    正文

革命性DX11架构!GTX480/470权威评测

第四章/第七节 GF100图形架构:一级缓存与二级缓存

    GF100核心拥有很多种类的缓存,他们的用途不尽相同,其中一级缓存、共享缓存和纹理缓存位于SM内部,二级缓存则是独立的一块,与光栅单元及显存控制器相连。

64KB可配置共享缓存与一级高速缓存

    以往的GPU都是没有一级缓存的,只有一级纹理缓存,因为这些缓存无法在通用计算中用于存储计算数据,只能用于在纹理采样时暂存纹理。而在GF100当中,NVIDIA首次引入真正的一级高速缓存,而且还可被动态的划分为共享缓存。

    在GF100 GPU中,每个SM除了拥有专用的纹理缓存外,还拥有64KB容量的片上缓存,这部分缓存可配置为16KB的一级缓存+48KB共享缓存,或者是48KB一级缓存+16KB共享缓存。这种划分方式完全是动态执行的,一个时钟周期之后可自动根据任务需要即时切换而不需要程序主动干预。

    一级缓存与共享缓存是互补的,共享缓存能够为明确界定存取数据的算法提升存取速度,而一级缓存则能够为一些不规则的算法提升存储器存取速度。在这些不规则算法中,事先并不知道数据地址。

    对于图形渲染来说,重复或者固定的数据比较多,因此一般是划分48KB为共享缓存,当然剩下的16KB一级缓存也不是完全没用,它可以充当寄存器溢出的缓冲区,让寄存器能够实现不俗的性能提升。

    而在并行计算之中,一级缓存与共享缓存同样重要,它们可以让同一个线程块中的线程能够互相协作,从而促进了片上数据广泛的重复利用并减少了片外的通信量。共享存储器是使许多高性能CUDA应用程序成为可能的重要促成因素。

共享式级高速缓存

    GF100拥有一个768KB容量统一的二级高速缓存,该缓存可以为所有载入、存储以及纹理请求提供服务。二级缓存可在整个GPU中提供高效、高速的数据共享。物理效果、光线追踪以及稀疏数据结构等事先不知道数据地址的算法在硬件高速缓存上的运行优势尤为明显。后期处理过滤器需要多个SM才能读取相同的数据,该过滤器与存储器之间的距离更短,从而提升了带宽效率。

    统一的共享式缓存比单独的缓存效率更高。在独享式缓存设计中,即使同一个缓存被多个指令预订,它也无法使用其它缓存中未贴图的部分。高速缓存的利用率将远低于它的理论带宽。GF100的统一共享式二级高速缓存可在不同请求之间动态地平衡负载,从而充分地利用缓存。二级高速缓存取代了之前GPU中的二级纹理缓存、ROP缓存以及片上FIFO。

GF100的缓存架构让各流水线之间可以高效地通信,减少了显存读写操作

    统一的高速缓存还能够确保存储器按照程序的顺序执行存取指令。当读、写路径分离(例如一个只读纹理路径以及一个只写ROP路径)时,可能会出现先写后读的危险。一个统一的读/写路径能够确保程序的正确运行,同时也是让NVIDIA GPU能够支持通用C/C++程序的重要因素。

    与只读的GT200二级缓存相比,GF100的二级高速缓存既能读又能写,
而且是完全一致的。NVIDIA采用了一种优先算法来清除二级缓存中的数据,这种算法包含了各种检查,可帮助确保所需的数据能够驻留在高速缓存当中。

ATI的一二级缓存设计:

    我们再来看看ATI的缓存设计,其中一级缓存部分与NVIDIA类似,每组SIMD阵列拥有32KB的本地共享缓存和8KB的一级纹理缓存,在通用计算中纹理单元可用于负责数据拾取,这样与SIMD捆绑在一起的4个纹理单元可共享8KB的一级缓存。

    RV870总共拥有20组SIMD阵列,这样总共就是160KB的一级(纹理)缓存和640KB的共享缓存。而GF100则拥有1024KB的可动态配置的一级缓存+共享缓存,不但容量更大而且效率更高。

    二级缓存部分与GT200/G80的设计相同,L2与显存控制器绑定在了一起,每个64bit显存控制器独享128KB L2,四个就是512KB。而GF100拥有单块768KB完全共享的二级缓存,同样是容量更大效率更高。

    可以看出,ATI的一二级缓存都是完全分散的,为了协调一二级缓存之间的数据交换,ATI特意设计了一个可全局共享的64KB数据缓存。至于独享式缓存与共享式缓存的效率与性能,无需多言,大家可参照CPU的发展即可略知一二。

0人已赞
第1页:千呼万唤始出来 GTX480/470终于降临第2页:DX10.0大革命:画面很完美、但速度很慢第3页:DX10.1小修补:片面追求画面行不通第4页:DX11时代来临:为高效率游戏而生第5页:DX11特性解读:Shader Model 5.0第6页:DX11特性解读:多线程处理第7页:DX11特性解读:两种新的纹理压缩格式第8页:Tessellation:ATI原创技术但孤掌难鸣第9页:Tessellation:细分曲面的原理第10页:Tessellation:DX11中的改进第11页:Tessellation的妙用:虚假贴图终结者第12页:Tessellation的妙用:随风飘扬的旗帜第13页:Tessellation的妙用:波澜壮阔的水面第14页:Tessellation的妙用:不可思议的长发第15页:DirectCompute与Stream/CUDA/OpenCL第16页:DirectCompute 10/11版本间的区别第17页:DirectCompute11的妙用:顺序无关透明第18页:DirectCompute11的妙用:电影级景深第19页:DirectCompute11的妙用:高清晰环境光第20页:GF100图形架构:绝非新品装旧酒第21页:GF100图形架构:芯片图与架构图第22页:GF100图形架构:居然是四核心GPU第23页:GF100图形架构:强大的多形体引擎第24页:GF100图形架构:第三代流处理器第25页:GF100图形架构:纹理单元不升反降?第26页:GF100图形架构:一级缓存与二级缓存第27页:GF100图形架构:光栅单元与高倍抗锯齿第28页:Fermi计算架构:GPU并行计算历史第29页:Fermi计算架构:完全按照客户需求设计第30页:Fermi计算架构:恐怖的双精度性能第31页:Fermi计算架构:首次支持C++编程第32页:Fermi计算架构:首次支持显存ECC第33页:Fermi计算架构:NVIDIA Nexus开发平台第34页:附加功能增强:PhysX物理加速第35页:增强附加功能:3D立体3屏技术第36页:增强附加功能:光线追踪第37页:GTX400实物对比:造型一点都不夸张第38页:GTX480实物:官方艺术照赏析第39页:GTX470实物:官方艺术照赏析第40页:GTX480实物:外观和散热器实拍图第41页:GTX480实物:全裸拆解与显存解析第42页:GTX480实物:供电模块全解析第43页:GTX470实物:外观与散热器赏析第44页:GTX470实物:全裸拆解与供电解析第45页:首批上市显卡:七彩虹GTX470第46页:Demo解析:8800/GTX200 Demo回顾第47页:Demo解析:Supersonic Sled寓教于乐第48页:Demo解析:Supersonic Sled物理效果第49页:Demo解析:RagingRapidsRide第50页:Demo解析:Island11震撼的水面第51页:Demo解析:Hair不可思议的长发第52页:Demo解析:Design Garage实时光线追踪第53页:测试平台:Core i7 975 + X58豪华配置第54页:DX10理论测试:《3DMark Vantage》第55页:DX11理论测试:《Heaven Benchmark》第56页:DX11游戏:《BattleForge》第57页:DX11游戏:《STALKER:COP》第58页:DX11游戏:《尘埃2》第59页:DX11游戏:《异形大战铁血战士》第60页:DX11游戏:《战地:叛逆联队2》第61页:DX11游戏:《地铁2033》第62页:DX10.1游戏:《孤岛惊魂2》第63页:DX10.1游戏:《鹰击长空》第64页:DX10游戏:《孤岛危机:弹头》第65页:DX9C游戏:《使命召唤:现代战争2》第66页:PhysX游戏:《蝙蝠侠》第67页:微软DX11 SDK:SUBD11第68页:微软DX11 SDK:PN Triangles第69页:NVIDIA Demo:Island11第70页:NVIDIA Demo:Hair第71页:视频转码测试:Badaboom第72页:科学计算测试:Folding Home第73页:温度测试:风扇温控90度开始加速第74页:功耗测试:先准备600W电源吧第75页:测试成绩汇总:GTX480比GTX470强多少第76页:测试成绩汇总:GTX480 PK HD5870第77页:测试成绩汇总:GTX470 PK HD5850第78页:GTX480双卡SLI效率测试第79页:全文总结与展望:DX11争霸赛才刚开始第80页:首批上市GTX480/470显卡及有奖互动

关注我们

泡泡网

手机扫码关注