NVIDIA的GTX Titan X显卡保密工作做的很好,国内一直没给技术文档(害怕GTX 970重演吗?),价格也是发布后10多个小时才确定,7999元的价格跟前代Titan显卡是一样的。不过之前GK110大核心的Titan显卡相比GK104核心做了很多改进,增加了1/3的双精度浮点单元,所以首先发布于Tesla产品线上,但这次的GM200核心首先就用于桌面了,Tesla方面很低调,其中很大一个原因可能是GTX Titan X的双精度浮点性能相比之前的GK110核心退步太多了。
昨天GTC大会开幕式上,NVIDIA CEO黄仁勋正式发布了GTX Titan X,背后的PPT上公布了GTX Titan X的浮点性能——单精度7TFLOPS,但双精度浮点性能只有0.2TFLOPS,算起来是1/32的单双精度比,跟GTX 980的GM204核心是一样的,比GK104核心的1/24比例还要低,跟GTX 780 Ti的GK110-425核心的1/8相比也差了很多,而跟GTX Titan的GK110-400/430核心的1/3更无法相提并论了。
回顾之前的GK110核心,其晶体管从35亿暴增到71亿的原因之一就在于GK110核心多了1/3的双精度浮点运算单元(每个SMX单元中有192个单精度单元,64个双精度单元),这对服务器级应用大有裨益,所以GTX Titan及后面的GTX Titan Black的双精度浮点性能非常强大,前者达到了1TFLOPS以上,后者也有1.3TFLOPS,是GTX Titan X的5-6倍还多。
当然,双精度性能提升也有相当大的代价——占用庞大的晶体管不说,功耗和发热也会随之提升,第一代GTX Titan上NVIDIA实际上默认禁止了这1/3的双精度性能,需要在驱动程序中打开,我们之前也做过详细测试:聪明的“选择”,GTX Titan通用计算性能及其影响。
但是这次的GTX Titan X显卡中笔者并没有找到CUDA——双精度的选择开关,这以为这GTX Titan X显卡实际上就没有这样的功能,这次的GM200核心并没有如GTX Titan那样设计1/3的双精度单元,只是GM204核心的放大。
GPU通用计算对桌面玩家来说实用意义不是很大,我们的评测中跑了Luxmark及Computemak两个项目做参考,而且这部分不会计入成绩。对于部分兼顾开发的用户来说,这里提供Anandtech及Computerbase两家网站的GTX Titan X显卡GPU计算性能。
蛋白质折叠的单精度性能测试
蛋白质折叠的双精度浮点测试
双精度性能大砍的结果在蛋白质折叠测试中得到了展示,单精度性能中运算能力为每天344.4纳秒,大大高于GTX 980、R9 290X及GTX Titan显卡,但双精度性能中GTX Titan X的性能就要落后于绝大多数旗舰显卡了,甚至还跑不过爷爷辈的GTX 580,只比GTX 980好点,后面Computerbase网站做的测试中也有单精度及双精度的差异。
总之,GTX Titan X虽然单精度浮点性能提升到了7TFLOPS,但双精度浮点性能并没有达到GK110核心那样的高度。NVIDIA这么做显然是为了某种平衡——同样28nm工艺下,GK110核心晶体管从GK104的35亿翻倍到71亿,GM200核心没有这么多的双精度单元就已经是80亿晶体管了,如果按照同样比例增加1/3双精度单元,恐怕核心和晶体管数量又要增大一个量级了,其功耗及发热控制都是个问题了。
我们还可以再“腹黑”地猜测一下新一代Pascal架构的双精度计算性能也不会再如GK110那般疯狂了,因为NVIDIA前两年还在提的每瓦特双精度性能比的概念现在变成了“混合精度”,不再刻意强调双精度了。至于是不是这样,我们明年再来看。
话说回来,至于单精度、双精度性能到底有多重要?服务器应用可能会偏重双精度多一些,但这两家的测试中双精度的比例并不是那么多,所以单精度无敌的GTX Titan X多数情况下还是登顶了。如果单双精度运算也存在一个80/20的规则,这可能就是NVIDIA放弃大规模提升双精度性能的根源了。
下面的成绩是上述两家网站做的GTX Titan X单精度及双精度浮点性能测试,如果未作特别解释,以下图表中的成绩都是越高越好。
越低越好
德国Computerbase网站的浮点性能测试
越低越好
越低越好