● 性耗比第一功臣:SMX单元
SM曾经是NVIDIA GPU的ALU团簇基本单元,这一单元在GK104中的改进可谓翻天覆地,NVIDIA采用的全新的SMX单元彻底改变了传统的SM单元的内涵。
Kepler架构所采用的SMX单元与Fermi的SM单元在逻辑结构上十分近似,都拥有完整的几何前端,线程仲裁机制,ALU团簇,Texture Array以及unified cache/shared和Register。除了没有后端之外,一个SM/SMX单元在结构上可以说趋近等同于一颗标准GPU。
GK104逻辑构架
与Fermi的SM单元规模对应线程粒度单位warp(32 ALU VS 32 Thread)不同,Kepler的SMX单元急剧放大了ALU团簇的整体规模,其ALU总量从过去的32个增加到了192个。与此同时,SMX单元的线程仲裁管理机制也得到了放大。负责线程分派和发放管理的Warp Scheduler从过去的两个增加到了4个,与之对应的Dispatch Unit从过去的2个增加到了8个,Warp Scheduler与Dispatch Unit的比例提升到了1:2,这些举措可以有效的改善单元规模增大带来的线程分派及管理压力。
SMX单元结构
在放大ALU团簇以及线程仲裁机制的同时,NVIDIA还进一步放大了与ALU团簇对应的Register。根据NV提供的资料,Kepler中每个SMX的Register较之Fermi的SM放大了一倍,达到了65536X32bit的规模。
在Unified Cache体系方面,Kepler与传统的Fermi在结构上没有多大的差异,其L1/shared以及L2 cache的大小和比例均未发生变化,仍旧维持64K的L1/Shared以及128K/MC的L2尺寸。整个体系中最值得关注的变动来自L2 cache速度以及带宽的提升,NVIDIA称GTX680的L2 cache目前运行在分频状态下,默认运行频率是核心频率的一倍,这为GTX680提供了比过去大得多的L2带宽,这为通用计算性能以及Texture性能的提升创造了有利的条件。
更为强劲的SMX性能
更大的ALU规模、更多的线程仲裁机制以及更大的寄存器缓冲为SMX带来了全新的性能表现,新的逻辑设计让GK104的运算单元拥有了2倍于Fermi的性能
推荐经销商