- 分享
- 0
- 人气
- 0
- 主题
- 0
- 帖子
- 1842
- UID
- 114085
- 积分
- 61
- 阅读权限
- 12
- 注册时间
- 2007-12-9
- 最后登录
- 2016-7-1
- 在线时间
- 605 小时
|
从DirectX 9开始GPU引入可编程着色器(programable shader),这些shader可以对顶点、像素等对象的属性进行复杂的计算,达到千变万化的画面效果,而传统GPU上曾经扮演重要角色的固定功能单元——例如纹理映射单元(TMU)、光栅操作处理器(ROP)重要性正逐渐削弱。
基于这一趋势,NVIDIA在第二代DirectX 9 GPU——NV4x上开始让shader的资源达到两倍于TMU、ROP的数量,ATI也在RADEON X1900/1600系列开始让shader的数量达到TMU/ROP的三倍。
有趣的是NVIDIA在GeForce 7系列上引入了异步几何单元时钟技术,让vertex shader的速度比pixel shader高出几十个MHZ,一定程度上达到了提高vertex shader处理的速度。
在2004年2月ATI宣布和美国德州的Intrinsity合作,获取后者的Fast14电路设计技术授权,该技术能让GPU逻辑电路的时钟达到4倍的速率,以当时来看可以做到1.6GHz到2.4GHz。
不过在ATI采用上Fast14之前就与AMD合并,而获取Fast14技术3年后推出的R600家族产品并未使用上改技术,GPU内的各个关键逻辑单元仍然保持同步的速率(shader、TMU、BE都运作于同一个频率上)
而ATI的竞争对手——NVIDIA虽然没有获取Fast14技术,但是在06年年底推出的G80却引入了1.35GHz shader、575MHz ROP的异步时钟技术,成为首枚shader时钟超过1GHz的GPU产品。
不仅G80具备shader/ROP异步时钟技术,事实上整个G8x家族都具备该特性,成为G8X系列的一个重要技术亮点。
shader之所以能够跑上1.X+GHz等级,关键在于其运算特性决定的。和TMU需要频繁访问显卡内存不同的是,现在的shader运算非常依赖于片载cache,这和CPU设计非常类似。为此G8x的设计师为G8x的每个SM(streaming multi-processor)选择了小而简单的cache(以PDC为例,时延可以达到极快的1个周期),从而让高频的shader设计成为可能。
严格来说,G8x每个SM里的16KB PDC并不算是严格意义上的cache,而是类似Cell SPE中的local storage来使用的。16KB的大小可以实现较短的访问时间,按照Tarjan、Thoziyoor、Jouppi[2006]的研究,16KB的 cache访问时间比256KB快大约38% |
|