MCPLive > 杂志文章 > Maxwell和Volta NVIDIA下一代GPU猜想

Maxwell和Volta NVIDIA下一代GPU猜想

2013-06-21李实《微型计算机》2013年6月上

GPU能发展到什么地步,计算能力又能膨胀到怎样的高度呢?NVIDIA近发布了很多消息,特别是针对下一代Maxwell和下下代产品Volta,或许我们可以从中探寻一二。

Maxwell和Volta NVIDIA下一代GPU猜想

NVIDIA在GPU架构的设计上一直都给人稳扎稳打的印象。纵观其近5年的产品,从G80开始到GT200、再到Fermi、Kepler,NVIDIA的GPU架构从单纯的图形计算架构开始一步一步进化,逐渐进化成我们今天看到的通用计算、图形计算并重,能耗比和实际效能表现都还不错的产品。NVIDIA在产品的发展上没有停歇,在开普勒之后,Maxwell以及Maxwell的继任产品——Volta也出现在2013年的GTC大会上。这些新产品都有哪些特色呢?结合目前仅有的一些资料,本文将做出一定范围内的预测。对于这些预测是否可以实现,本文给出了一些判断。当然,依据惯例目前NVIDIA依旧守口如瓶不会多说一句,所有的信息都只有等到产品具体发布后才能真正确认了。

预测一:顶级Maxwell产品的性能较明显胜出GeForce GTX 690,和GeForce GTX Titan SLI基本相当
可信度:★★★★

GPU的性能是G PU发展的根本动力,那么Max well的性能表现如何呢?根据NVIDIA 2013年新的路线图,Max well每瓦特双精度性能将是Fermi的7~8倍,Kepler的2~3倍左右。当然,这些数据全都是概数。有意思的是,这个数据相比2010年NVIDIA估计Maxwell的每瓦特双精度性能是Fermi 的16倍要缩水不少,可能考虑到实际的研发难度以及工艺进展的可能性,NVIDIA不得不调低了目标。看来,不仅仅是业内人士的预测会出错,就算是NVIDIA预估自己的产品发展也会出现明显的误判。

在GTC2010大会上,NVIDIA的一些数据表示,Fermi的每瓦特双精度性能为1.5GFlops/W(*注释),Kepler的双精度性能为5.57GFlops/W(例如TeslaK20X,它的双精度性能为1.3TFlops,TDP为235W,每瓦特双精度性能为5.53GFlops/W)。在NVIDIA之前的路线图中,Kepler的双精度性能是Fermi的4倍左右,根据NVIDIA公布的数据来看,这个任务算是完成了。

*注释:NVIDIA并没有说明Fermi架构的每瓦特双精度性能为1.5GFlops/W的数据来源。从实际产品来看,Fermi家族的Tesla M2090双精度性能为665GFlops,TDP约为225W,每瓦特双精度能力约为2.95GFlops/W。如果说Tesla M2090属于刀片应用的产品,对功耗极其敏感,芯片体质极好仅为特例的话,那么更普通一些的Tesla C2070的双精度能力为515GFlops,TDP约为247W,每瓦特双精度能力约为2GFlops/W,也要大于NVIDIA给出的1.5GFlops/W。另外一种说法是,Tesla产品的频率在Fermi时代都非常低,不超过600MHz,因此才维持了不错的功耗情况,一旦Fermi的频率超过600MHz,并进行双精度计算时功耗将暴增,每瓦特性能会大幅下跌。因此,很有可能是保守的频率设定、极高的芯片品质和较低的电压让Fermi版本的Tesla产品维持在较低功耗上,从而提升每瓦特性能。但这并不意味着其架构本身每瓦特性能设计很优异。

Maxwell的每瓦特双精度能力将是Fermi的7~8倍,这意味着在估算的情况下,Max well的每瓦特双精度能力高大约在12/W~16GFlops/W(按照Fermi“正常”产品的每瓦特双精度性能1.5~2GFlops估计)。如果其功耗是250W的话,那么单颗芯片的双精度计算能力大约有3~4TFlops。

双精度性能高可达4TFlops是什么概念?一般玩家对双精度能力几乎没有任何参照,毕竟目前没有任何游戏使用双精度哪怕一丁点功能,绝大部分(超过99.5%)的民用应用也和双精度计算也无关。不过,根据Maxwell的双精度能力,可以估算一下它的单精度能力,再比较目前的游戏显卡,就可以得到它在主流游戏中的大概性能情况了。

在游戏显卡中,GeForceGTX680的单精度性能大约为3TFlops,GTX690的单精度计算能力大约为5.6TFlops(2.8TFlops×2)。在Maxwell上,如果单精度性能和双精度性能的比率依旧为1:3的话(Kepler的单精度和双精度的比率为1:3),那么Maxwell的单精度性能将达到12TFlops——这已经大大超越了GT X 690。换句话来说,Max well的顶级单核心显卡将拥有远超上代双芯产品的计算能力。退一步来说,即使像Fermi家族那样,Maxwell的双精度性能和单精度性能的比为1:2的话,其9TFlops的性能还是令人乍舌。

9TFlops的性能意味着如果架构设计不出意外的话,这款产品在实际游戏表现中胜出GeForceGTX690已经没有悬念,12TFlops更是几乎超出GTX690达100%还多。当然,GTX690是两颗小规模核心GK104的集合,使用GK110核心来比较的话,GK110单颗芯片4.5TFlops的单精度计算能力,两颗芯片就是9TFlops——这和Maxwell“非高估计”下的计算能力差不多。

当然,终实际产品的性能表现也并非和双精度、单精度计算能力呈直接等比例关系。GPU的计算能力和性能肯定是极大关系的,但这种相关性究竟有多大,具体产品还得具体分析,毕竟GPU本身也是复杂集群,影响它的因素太多。但仅仅从NVIDIA给出的模糊数据来看,顶级的Maxwell性能肯定令人乍舌。

图1:NVIDIA在GTC 2010展示的路线图
图1:NVIDIA在GTC 2010展示的路线图

图2:NVIDIA 2013的路线图,明显改动了产品发布时间,增加了Volta。
图2:NVIDIA 2013的路线图,明显改动了产品发布时间,增加了Volta。

图3:GTX 690的单精度能力达到了5.6TFlops,但在1080p分辨率下依旧难以实时渲染出“真实”的画面。
图3:GTX 690的单精度能力达到了5.6TFlops,但在1080p分辨率下依旧难以实时渲染出“真实”的画面。

小知识:不仅有Maxwell和Volta—NVIDIA曾使用过的物理学家名称

NVIDIA的GPU架构以物理学家的名字作为代号是“早已有之”的惯例了。NVIDIA从早期的NV04(TNT)时代开始,就采用物理学家作为产品架构的代号了。早期的Fahrenheit、Celsius、Kelvin、Rankine四位物理学家的成就主要集中在温度、热力学等学科中,分别代表NV04、NV10、NV20和N V30时代的产品;比较近的有Curie、Tesla、Fermi和Kepler,则涉及了核物理学、电磁学、以及天体力学等学科,分别代表的是NV40、G80、GF100和GK104等产品。紧接着将于明年发布的Maxwell,则以英国物理学家和数学家麦克斯韦进行命名,他的贡献主要是经典电磁理论。在更下一步的Volta,是以意大利物理学家伏打的名字命名,他的主要贡献是电力学,发明了目前广泛使用的电池。

从NVIDIA选择物理大师来命名产品架构和实际产品表现的情况来看,两者并没有任何相关性,仅仅只是产品代号而已。不过即使如此,这些物理学家的名称也随着新GPU的发布而被玩家熟知,甚至成为NVIDIA某代产品的代称。

Maxwell和Volta两位大师成为了NVIDIA下一代、下下代产品架构的代号,上图为Maxwell,下图为Volta。


Maxwell和Volta两位大师成为了NVIDIA下一代、下下代产品架构的代号,上图为Maxwell,下图为Volta。

预测2:Maxwell的大核心产品将延迟生产,首先露面是采用中等核心的Sweet Spot产品
可信度:★★★★★

英特尔在执行了Tick-Tock战略后,以一代产品换工艺、一代产品换架构的方式稳步前行。对GPU来说,频繁更换架构已经是“青春期”的事情了,目前NVI DIA的一代GPU架构大约需要维持2~3年时间才能彻底更换。因此,从Fermi开始,NVIDIA更换架构就意味着全新工艺将上场,毕竟目前制约GPU发展的核心因素并非产品设计,而是工艺制程。

在Kepler上,NVIDIA采用了首发中等核心产品、再用两颗中等核心组成单卡双芯获取图形性能王者的手段——这样做的好处非常明显,无论是功耗还是良率、制程都有一定保障,真正的本代架构大核心则需要等待制程进一步优化成熟之后才上市。这样做能在很大程度上避免之前GT200、Fermi时代的“大核心高功耗和低良率”的尴尬场面。

在Maxwell上,NVIDIA将启用下一代20nm制程工艺。TSMC对20nm工艺的难度估计比较充分,早在2012年就开始进行研究。新消息是由于进展顺利,TSMC将在2013年第二季度开始试产20nm的产品,2014年开始批量化生产。这个进度和Maxwell的上市时间是基本相同的。

相比从40nm到28nm的进化而言(TSMC放弃了32nm工艺节点),28nm进化到20nm则是典型的“半代”工艺。TSMC的下一代全代工艺是16nm或者14nm,只不过技术难度太大,TSMC短期内无法掌握。相比英特尔早就开始商业化的22nm 3D工艺而言,TSMC的20nm工艺虽然数字更小,但其功耗、良率的实际情况可能还不如英特尔的22nm工艺。因此,NVIDIA的首批Maxwell产品必定以小核心产品试水。毕竟在Kepler上NVIDIA首先试产的并非GK104,而是GK107这样的入门级GPU。

Maxwell的新一代产品GM107(暂时的称呼)应该在芯片面积上和GK107相差不大,生产难度也不大,甚至NVIDIA也可能使用成熟的28nm工艺来生产GM系列的小核心产品。毕竟这些小核心产品无论从功耗还是芯片面积来说,即使现在使用老工艺、未来再换用新工艺生产也都是稳赚不赔。这是因为28nm工艺的成熟度更高,用它在短期内生产出GM107抢占市场是不错的选择。

在TSMC的20nm工艺逐渐稳定成熟后,NVIDIA才会考虑试产更大核心的产品,比如GM100这种必定会出现的“庞然大物”,否则又将会重蹈GT200或者GF100的覆辙。毕竟对顶级计算卡(Tesla系列)市场而言,稳定的产品供应才是重要的,NVIDIA现在紧紧掌握着这个市场,不希望出现任何的闪失。

28nm工艺刚投产时,在GK104这种中等核心上的表现都不怎么出色,更不要说GK110这种巨核心了。在20nm工艺上,NVIDIA必定也会延迟巨核心产品的生产。
28nm工艺刚投产时,在GK104这种中等核心上的表现都不怎么出色,更不要说GK110这种巨核心了。在20nm工艺上,NVIDIA必定也会延迟巨核心产品的生产。

计算卡一直是NVIDIA利润的重要来源,虽然卖得不多,但每一张卡售价高可达几万美元,依旧赚得盆满钵盈
计算卡一直是NVIDIA利润的重要来源,虽然卖得不多,但每一张卡售价高可达几万美元,依旧赚得盆满钵盈

预测3:Max well也分为针对游戏用户的中小核心和针对计算用户的大核心产品
可信度:★★★★

Maxwell也分为针对游戏用户的中小核心和针对计算用户的大核心产品,这一点基本上毫无疑问。从游戏GPU的发展来看,AMD在Radeon HD 6900时代,将之前的中端产品提升到高端。比如Barts这样的Sweet Spot核心,传统命名应该是RadeonHD 6770,但AMD将上代HD 5770直接改名为HD 6770,Barts核心则命名为Radeon HD 6800系列,顶级则开辟了HD 690 0的产品线。NVIDIA在Kepler上完成了类似的变化,将传统的大核心产品GX100系列独立出来成为计算卡和顶级图形卡,而传统的SweetSpot则摇身一变成为高端产品,比如GTX 680。

这样做的好处非常明显,一来可以提高产品毛利率,在财报上有较好的呈现;二来可以区分专业计算市场和游戏市场,毕竟普通玩家不需要双精度等计算功能(并且未来三到五年内,游戏领域都不太需要双精度这样的计算),所以干脆分开来比较好。在Max well上,NVIDIA也将会延续这样的布局。根据目前的情况看来看,Maxwell产品代号为GM,旗下有GM100、GM104、GM106和GM107等诸多产品。其中GM100或者GM110是针对计算用户设计的大核心,其余的产品都是针对普通游戏用户。

前文所说的顶级Maxwell单核心产品则是指GM100或者GM110,它们将以500平方毫米的庞大体量成为Maxwell系列中顶级的GPU,会拥有高的单精度和双精度性能。其余的诸如GM104、GM106以及GM107等核心,应该和目前的Kepler的同档次产品类似,都是针对主流游戏玩家的产品。

当然,有关Maxwell产品的具体情况,在没有发布之前一切都不能下终结论。NVIDIA也可能突然改变产品代号,让一切重归迷雾。这样的事情之前曾出现过,未来也可能还继续出现。

预测4:Maxwell可能集成ARM核心,支持真正的统一内存寻址
可信度:★★★

NVIDIA有关Project Denver(NVIDIA公司于2011年1月5日在CES 2011上发表的采用ARM架构的微处理器,中文含义为“丹佛计划”)的消息,从2010年底就开始在业界流传,随后NVIDIA又在GTC大会上透露过有关高性能ARMv8处理器的消息。在GTC 2011大会上,NVIDIA更是表示Maxwell上将有Project Denver参与其中。

这种情况更可能只出现在顶级Maxwell上,也就是传说中的GM100或者GM110。GM110和GM100这类计算卡对计算性能需求更明显,使用ARM核心参与内部线程处理、调用的话,能够大幅度减少GPU计算中的掣肘和约束。

此外,在NVIDIA的路线图中,Maxwell的一个显著特性就是支持Unified Virtual Addressing(统一内存寻址,简称为UVA)。在之前的产品中,NVIDIA从Fermi架构开始就宣称自己引入了UVA。不过直到Kepler,UVA功能在GPU上依旧是比较鸡肋的存在。因为CUDA的本身限制导致虚拟内存必须和物理显存一一对应,2GB的显存只能划分到2GB的虚拟内存上,用处不大。而在Maxwell上NVIDIA又强调其对UVA的支持,显然是有了全新的突破。很可能是GPU可以真正支持硬件虚拟内存,支持按需分页等功能。再加上其他的技术,Maxwell本身的多任务处理能力可能会大幅度加强,在并行计算中会发挥出更强大的功能。

不过这样做也并非没有代价,由于需要支持更多的线程存储,GPU本身的缓存也会进一步加大。缓存是极为耗费晶体管的一种设备,加大缓存后NVIDIA有多少空间来布置更多的计算ALU等单元,将成为一个两难的问题。虽然20nm工艺能够进一步提升晶体管的密度,在同等面积内塞入更多的晶体管,但显然需求赶不上增长的幅度,NVIDIA需要很好地平衡两者之间的关系。

除了GM100这样的顶级计算产品外,针对游戏市场的GM104等产品,可能不会加入ARM核心,也不会支持诸多计算卡需要的功能,甚至包括UVD在内的功能都不会支持。但也不排除NVIDIA为加强GPU的通用计算能力同样为其加入ARM核心的可能,游戏卡上暂时没有太多资料可以证实这一点,只能说可能性一半对一半吧。

Volta架构离我们还是太远了,目前比较确定的一点就是Stacked DRAM显存将在这款产品上使用。
Volta架构离我们还是太远了,目前比较确定的一点就是Stacked DRAM显存将在这款产品上使用。

小知识:GPU中的ARM核心究竟有什么用?

传统意义上GPU并不需要什么复杂的线程控制单元,比如AMD经典的4D+1D架构,恰好对应了3D计算中x、y、z、alpha以及一些特殊计算。这样的设计在图形计算中可以发挥出大的效能。不过随着GPU的发展,GPU庞大的并行计算能力渐渐被开发出来。这个时候,GPU本身的内部指令并行化的问题就被提上了台面。

NVIDIA在G80设计时就考虑到了大规模CUDA Core需要一个控制中心,G80中就设计了Thread Scheduler,直译就是线程调度单元。这个单元的作用就是将一堆堆涌入的指令进行排序、打包,并根据CUDA Core的情况调配指令到那些空闲又需要工作的地方去。Thread Scheduler的存在,让GPU变得具有一定的指令处理能力,而不再是傻乎乎的无脑肌肉大汉只能进行计算。

不过T hread Scheduler的发展速度渐渐跟不上GPU的发展了。早期的NVIDIA显卡的CUDA Core还只有128个,那个时候每个CUDA Core中有一个ALU和一个FPU,CUDA Core本身也有一些极简单的线程排序功能,还凑合够用。在Kepler时代后,Giga Thread Scheduler这样的设计面对庞大的、高达2000多个CUDA Core,虽有所加强,但还是不够用,即使NVIDIA宣称Giga Thread Scheduler的性能相比Thread Scheduler提高了10倍。

当然,现在的显卡计算也变得更为复杂,特别是新版本的CUDA引入了诸如一些分支判断等功能,让整个架构更为智能的同时也更为复杂(Kepler干脆把Scheduler过程扔回给了CPU)。在这种情况下,Giga Thread Scheduler或者类似的东西就完全跟不上趟了。

于是,NVIDIA需要用一些更强大的设计来改善这种情况。GPGPU的发展要求更智能、更开放的并行计算。NVIDIA选择了ARM,试图采用一些高性能的ARM核心来帮助GPU判断任务、处理线程并行中遇到的难题。早在2011年,NVIDIA就宣布了主攻高性能计算市场的“丹佛计划”,黄仁勋曾经说:“丹佛工程是一款64位处理器,是完全定制设计的ARMv864位处理器,还有一些激动人心的秘密调料(some exciting secret sauce),但现在我们还不能说太多……唯一能告诉你们的就是,丹佛会非常棒!”黄仁勋对NVIDIA的ARM处理器看来非常满意。当然,这并不意味着GPU中需要放丹佛计划的ARM处理器进去,不过NVIDIA也的确在进行着在GPU中纳入ARM核心的计划。

NVIDIA帮助美国国防部进行的另一项计划叫做Echelon,NVIDIA的任务是设计强大的并行计算模块。根据已经公布的资料,Echelon将拥有128个SM模块(包含大量CUDA Core和缓存)以及8个Latency Processor核心,而后者就极有可能是丹佛计划中的高性能A R M处理器。终Echelon集群将实现20TFlops的计算能力,每颗Echelon芯片拥有2.56PFlops(Maxwell大概在10TF lops,约为0.01PFlops)。可想而知,如此庞大的计算能力的确需要多颗CPU来进行管理,CPU和GPU的合二为一才是未来发展的真正方向。

至于Maxwell,是否有A RM核心出现在其中,目前的确不明确。如果有可能的话,ARM核心会出现在Maxwell有关高性能计算的产品中,帮助处理一些GPU比较擅长的判断、分支、跳转、排序等操作任务。毕竟从路线图来看,NVIDIA的丹佛计划和Maxwell揭秘时间都差不多是2014年。当然,未来如何发展,也只能走一步看一步,毕竟NVIDIA现在紧守口风,没有一点消息露出,所有的内容都只能猜测了。

线程调度模块已经成为NVIDIA GPU中的庞大模块了,Fermi晶圆照片中的紫色部分可能就是线程调度模块。
线程调度模块已经成为NVIDIA GPU中的庞大模块了,Fermi晶圆照片中的紫色部分可能就是线程调度模块。

预测5:Volta架构将在2015年以后上市,采用更先进的工艺,支持Stacked DRAM
可信度:★★★★★

NVIDIA在GTC2013还发布了一些未来产品的计划,其中令人关注度就是Volta。根据NVIDIA的标识,Volta相比Maxwell,将进一步提升每瓦特双精度性能,少都是直接翻倍,其性能应该是Maxwell的2~3倍之间。这就意味着Volta有可能在250W功耗下,成为首个双精度性能突破10TFlops的GPU产品。

Maxwell会采用20nm工艺并延续大约2年的时间。2年后也就是大约2015年底到2016年,在Max well退市、Volta上市时,TSMC的工艺将会进化至16nm或者14nm。也就是说,在同样面积下,Volta容纳的晶体管数量将是现在Kepler的4倍左右。根据GK110在500平方毫米左右拥有71亿晶体管来计算的话,新的GV100或同档次产品将拥有280亿~300亿左右的晶体管。

NVIDIA在路线图上还给出了Volta的重要信息,那就是它将采用Stacked DRAM显存。这种显存技术将GPU和显存之间传统的PCB走线连接大幅度缩短,采用堆叠封装的方式,通过芯片上的硅穿孔,将显存和GPU直接连接,从而获得超高的位宽和带宽。保守估计Volta的GPU带宽将达到1Tib/s的水平,大幅度超越目前主流的250GB/s的带宽水平。

如此强大的计算能力和带宽,Volta将带给玩家无与伦比的视觉效果。在2016年前后,全新的DirectX 12可能会顺势推出。结合Volta的强大性能,玩家可以进一步享受更逼真的视觉效果。

预测那些事儿

事实上,预测这个事儿在很多情况下都不太靠谱。IT领域的预测也一样,之前多少能人志士的预测在几年后都被证明纯属胡扯。究其根本原因,主要还是这所有的预测,都基于目前的情况给出未来的方向。也就是说在这些预测中,环境是静止的,不考虑整个技术大环境的突破仅仅基于自身发展。但没人能说明未来的环境会如何改变,因此所有的预测成功可能性都不高。本文也做出了一些浅薄的预测,除此之外的大部分信息都是根据目前已有的资料进行了一些推测。即使如此,失败的可能性依旧很大。本文的主要目的在于帮用户梳理未来产品的发展方向,而不是来求证这些预测是否一定可靠。

分享到:

用户评论

共有评论(1)

用户名:

密码: