揭真相:Kepler的CUDA还和Fermi一样么

PChome | 编辑: 夏阳 2012-04-28 05:00:00原创 返回原文

 千元级霸主 HD7700系列推荐

也许大家还沉浸在开普勒Geforce GTX680带来的惊艳体验,但我们从架构以及蛛丝马迹中发现出一些与费米不太相同的地方。当然,要取得质的飞跃,进行大刀阔斧的架构优化和改进也是必然的做法。

制程的提升只能改变核心面积以及功耗,但晶体管该需要多少还是需要多少,为什么费米的CUDA数量以及纹理单元暴增了数倍,晶体管反而仅仅增加5亿?难道缩减的光栅单元和显存控制器如此耗费晶体管数目么?为什么同样是200MB的显卡驱动,新版为什么只能兼容Geforce GTX680而改变以往一款驱动可以兼容全系列的情况呢?

在Kepler发布之前有小道消息传出代号为GF104的Geforce GTX680会采用SIMD矢量架构运算模式,以全能的CUDA内核改为包含仅擅长游戏处理的顶点以及着色功能的部分,在正式发布之后也没有明确证实这一点,仅仅是告诉了大家在游戏性能方面会给大家一个惊喜,并且不屑的称对手Tahiti只是纸老虎,事实证明了Kepler不管做了什么样的改变,的确至少在游戏方面大获全胜。

通用计算实际上是指开放性利用可编程语言和接口通过调用GPU来完成本应CPU来完成的部分或全部任务,那么这就需要通用计算处理器本身的体积是比较庞大的。由于游戏的处理和通用计算是不沾边的,那么Kepler完全就没有保留通用计算的必要——Tesla足以,那么在削去CUDA本身的构成是正常的了。

Fermi的工作组(SM)以及CUDA单元的构成示意图

先了解一个数字,Geforce GTX680相对Geforce GTX580在单元上的变化:CUDA单元3倍,纹理单元2倍,显存控制器和光栅单元2/3倍。

特别是我们知道单从数量上看,试猜想CUDA本身体积得到削减,那么再借助28nm的制程,将面积控制的反而比GeforceGTX580还要小很多是很正常的,另外晶体管数量仅仅多出了5亿,没有因为增多删少而在数量上多出许多。因此可以确定:CUDA还叫CUDA,只是构成和Fermi不一样了。

殊途同归 配比源自成功案例

事实已经证明了GF104/GF114的构成配比是完美的,那么根据他们的架构图对比Geforce GTX680有很多相似之处。例如同是8个工作组,光栅单元和位宽也都是相同的,不同的是SMX取消了分频之后,即Shader和核心是同步的,但弥补这一点的做法也有,如每个工作组SMX的CUDA有了4倍的提升,而为了对应、匹配,纹理单元也提高2倍。

GF114完整规格示意图

GF104示意图

着色器频率相对来说降低一倍,而纹理单元等增加一倍,如果按照4D的说法来解释的话,Geforce GTX680不就是GTX560Ti的4D SIMD版么?

以296.10版驱动为例,只要是桌面型号,并且操作系统对应,那么在www.nvidia.cn官网上搜到GTX580的驱动都可以驱动GT430,也可以驱动GTS250。

为一个型号的GPU就单独开发一款驱动那实在是太费事了,况且基本架构都相同,在驱动的核心部分例如编译器等之类的程序完全是相同或者是相互兼容的,因此按照惯例来说301.10版驱动是不分型号的,而在www.nvidia.cn官网上默认弹出的Geforce GTX680版驱动只能用于驱动Geforce GTX680,也就是说Geforce GTX680的驱动是专用的,而驱动文件体积仍然是200MB,难道这也意味着驱动核心文件中仅包含的一种编译器,这种编译器又不能驱动除此之外的显卡,这就符合我们猜测的SIMD设想。

如果按照“SIMD”的设想是完全解释的通的,AMD在上代HD6970中就正是这样的架构:1536SIMD ALU,256Bit显存位宽,32光栅单元,并且是AMD一贯奉行的CoreClock与ShaderClock同频,只不过AMD类似线程指派器这样的仲裁单元少于NVIDIA而导致利用率不佳罢了。

其实无论是所谓的SIMD,还是MIMD,对于用户而言并不太重要,而至于在家用的范畴中也不需要保留通用计算的功能,追求能耗比和易用等改进才是可取之处。从开普勒的架构中我们仿佛可以看到AMD和NVIDIA似乎殊途同归,而冥冥之中似乎又能感觉到融合和异构的雏形。

返回原文

本文导航

相关阅读

每日精选

点击查看更多

首页 手机 数码相机 笔记本 游戏 DIY硬件 硬件外设 办公中心 数字家电 平板电脑