java怎么拦截某个对象
297
2022-11-09
从GTX到NVIDIA GPU架构的变迁史
2006年发生的这两件事本质上没什么关联,但是回想起当年及之后的GPU发展情况,总忍不住遐想一下如果当年ATI没被AMD收购,ATI、NVIDIA两家GPU公司今天的发展会如何?因为在2006年前后,ATI在独显GPU市场上的份额与NVIDIA并没有多大差距,05年之前市场份额甚至还领先一些,但2006年被收购之后由于两家公司需要整合,AMD/ATI两边的CPU、GPU产品路线图都不免受到影响,也是从那个时候AMD显卡的份额不断下滑,与NVIDIA的差距不断拉大,从曾经的55开变成了46开、37开,直到今年初双方的差距已经是28开了。
Reddit上有帖子讨论了2002年到2017年GPU市场的份额变化
NVIDIA以往会在GTC大会上提前两三年公布GPU路线图,不过2015年之后更新过Pascal显卡之后就不再推新的GPU路线图了,Turing图灵显卡发布之前就没在路线图上出现过,图灵之后的GPU架构官方也是守口如瓶,目前的说法称之为Amper安培,但最终是否如此还是未知数。
今天的超能课堂里我们就来回顾下NVIDIA GPU的发展过程,回头来看下这10年中NVIDIA GPU都经历了怎样的变化。同样地,后续还有AMD的GPU发展路程姊妹篇,敬请期待。
NVIDIA G80到GF100架构:40nm费米GPU的教训
NVIDIA的GPU发展史少说也要从G80时代CUDA架构开始讲起,不过限于篇幅原因,这里不打算再挖坟这么深了,G80及衍生版的G92核心在NVIDIA GPU中非常经典,马甲卡当初就是形容这一时期变化的,可以说花样频出,比现在的刀法精湛多了。
microway之前总结过GF100架构及之前的NVIDIA GPU架构情况
曾经有段时间业界形容AMD、NVIDA在GPU策略上的不同是“AMD擅长小核心,性能适中,但是低功耗、NVIDIA偏重大核心,性能强,但功耗高、成本更贵”,NVIDIA在GT200核心上确实是大核心策略,在GF100核心上达到了巅峰,从SP单精度、DP双精度配比上大家应该可以看出来,这时候NVIDIA已经在大幅提升GPU的计算性能了。
当年的GTX 480显卡(上)与GTX 580显卡(下)
GTX 480在功耗、发热上的翻车教训导致NVIDIA一度很难堪,直到后来推出了GTX 580显卡才有所缓解。
总的来说,40nm费米架构这一代,NVIDIA在GPU设计上有了一次飞跃,规格大幅提升,不仅注重游戏性能,也重视计算性能,为此塞入了更多的双精度计算单元,但也因此带来了诸多问题,GTX 480翻车事故带给NVIDIA很多教训,多多少少都影响了后来的GPU架构设计。
2012年NVIDIA Kepler架构:游戏、计算GPU分离,NVIDIA后发制人
距离GTX 580显卡发布一年半时间后,2012年3月22日NVIDIA推出了GTX 680显卡,由此28nm工艺的Kepler架构闪亮登场。这时候AMD基于全新GCN架构的HD 7970显卡已经发布将近3个月了(海外市场2011年12月底发布,国内是次年1月初),后者当时光芒万丈,GCN架构同时融合了计算及游戏的优点,性能比之前的VLIW架构显卡有了明显进步,而且还首发了台积电28nm工艺、PCIe 3.0等等。
GTX 680发布于2012年3月底
GTX 680显卡使用的是Kepler家族中的GK104核心,但GK104反应的架构设计思路早在GF100到GF104、GF114架构中就有所体现了,那就是减少SM单元数(NVIDA这代的正式称呼是SMX单元),提升每组SM单元中的CUDA核心数,GF100时代每组SM单元还是32个CUDA核心,GF104/GF114则是每组SM单元48个CUDA核心,而到了Kepler时代,每组SM单元的CUDA核心数一下子提升到了192个,纹理单元也增加到16组,前端渲染单元也增加到四组,同时SFU以及LD/ST单元也是水涨船高,增加到32组,纹理单元再次翻倍,8组SMX单元总计有1536个流处理器、128个纹理单元以及32个ROP单元。
GF110 SM单元(左)、GF114 SM单元(中)以及GK104 SMX单元(右)对比
除了SM单元大变之外,NVIDIA在Kepler架构中还做了一项重要改变——从Kepler开始,NVIDIA以往坚持的Core:Shader=1:2的分频模式已经没有了,以前采用这种方式是因为核心频率不能大幅提高,为了提高性能就必须让CUDA的核心频率增加一倍,但是这也意味着更高的能耗。
GK104架构的一大特点就是CUDA规模大幅增长
GTX 680中NVIDIA将SMX单元中的CUDA核心数提高至原来的3倍,而且核心频率也达到1GHz以上,不再需要Shader异步了,二者将同频运行,有助于降低显卡功耗,因此GTX 680在CUDA数量暴增的同时功耗更低,而每瓦性能比更是提高了一倍。
GTX 680显卡的发布解决了NVIDIA的燃眉之急,游戏性能小幅领先AMD的HD 7970,扳回了一局,不过计算性能上不如后者,毕竟GK104并不是为计算而生的架构。对NVIDIA来说,Kepler是他们真正贯彻了游戏、计算卡彻底分离的产品,想要更好的计算性能?那就找大核心的GK110核心吧。
GK110核心的SMX单元中依然有192个CUDA核心,但DP双精度单元数量从GK104的8个提升到了64组,这样一来但双精度的比例就变成了1:3,虽然还没有达到费米时代1:2那么夸张的地步,但远高于GK104的1:24了,再加上总性能的提升,GK110核心的计算性能总体来说还是进步的。
此外,GK110不仅仅是计算规模的增加,还增加了一些计算专用的新技术,比如NVIDIA开发的Grid Management Unit、GPUDirect、Hyper-Q以及Dynamic Parallelism动态并行技术。
在消费级显卡中,GK110首先用于2013年3月发布的GTX Titan显卡中,自此NVIDIA也开辟了一条新的产品线——Titan显卡,售价是999美元起步,比当时的高端显卡翻倍。
此外,Titan显卡的公版设计也与之前的显卡大为不同,并影响了后面的GTX XX80/80 Ti系列公版显卡的设计。
Titan显卡不是一般人买得起的,2013年11月份NVIDIA又推出了基于GK110核心的GTX 780系列显卡,其中GTX 780 Ti使用的是GK110-425-B1新核心,与此前的GK110还有所不同,核心面积更小一些,而且启用了完整版SMX单元,导致它的规格实际上比Titan显卡更好,性能更强,以致于后面NVIDIA又推出了完整版GK110核心的Titan Black显卡。
在Kpler架构的尾声阶段,NVIDIA还推出了GK210核心,它可以说是GK110核心的再改良版,也被称为Kepler 2.0,CUDA计算能力从GK104的3.0、GK110的3.5升级到了CUDA 3.7。
2014年NVIDIA Maxwell架构:SMM单元又重组,更注重能效
在Kpler时代,NVIDIA显卡从AMD HD 7970显卡的阴影中走出来了,GK104核心的GTX 680追上了HD 7970,但没有全面优势,GK110大核心的GTX 780系列性能上有绝对优势了,只是功耗要高,但此时的NVIDIA已经掌握主动权了,毕竟AMD后来推出HD 7970继任者的R9 290X同样存在功耗、发热的问题。
根据NVIDIA的路线图,Kepler之后就是Maxwell架构了,这时候制程工艺还是28nm,Maxwell架构的重点则是改进能效。在这个阶段,NVIDIA又上演了一次出人意料的举动,Maxwell架构既不是GM200也不是GM204,而是GM107,用在了GTX 750 Ti及GTX 750显卡,从命名上也不是更新一代的,还是沿用了GTX 700系列的。
GM107核心使用的是Maxwel一代架构,其最大变化就是将SM单元(这一代称为SMM单元)再次重组,从Kpler时代的每组SM单元192个CUDA核心减少到了每组128个,但是每个SMM单元将将拥有更多的逻辑控制电路,便于精确控制,这使得GM107核心的每核心效能提升了35%,每瓦功耗比提升了一倍。
这种全新的 SM 架构可大幅提升节能性,而且在着色器有限的工作场合中可令每个CUDA核心的性能提升 35%。实现这些进步需要对架构进行大量重大更改。 NVIDIA重新编写了SM调度器架构和算法,使其更加智能,避免了不必要的停顿,同时进一步降低了调度每条指令所需的能耗。
当然,SMM单元也有很多改进的地方,比如L2缓存容量从之前的256KB大幅增加到2MB,H.264及NVENC编码/解码能力也提升了,指令周期性能也改善了。
反映到显卡上,GTX 750 Ti及GTX 750显卡拥有极好的能效比,游戏功耗比同期的HD 7770、GTX 660甚至GTX 650 Ti功耗要低很多,而且温度、噪音也非常低,这款显卡可以说是近年来的一代经典。
在GM107核心的Maxwell一代架构之后,NVIDIA又在2014年9月份推出了GTX 980/970显卡,它们使用的是GM204核心,也被称为Maxwell 2.0架构。整个GM204核心可分为4组GPC单元,每组GPC则包含4个SMM单元,每个SMM单元又包含128个CUDA核心,8个纹理单元以及一个多边形引擎单元(PolyMorph Engine 3.0),总计2048个CUDA核心,128个纹理单元。
在桌面级显卡命名上,NVIDIA这次跳过了GTX 800系列(OEM及移动版GPU上有GTX 800系列),直接进入了GTX 900系列,GTX 980使用的是GM204-400核心,搭配4GB GDDR5显存,但它的性能已经超过了GK110大核心的GTX 780 Ti显卡,TDP则从250W直降到165W,整机功耗测试中也印证了功耗的大幅下降,可以说能效优势非常明显,不论是对AMD的显卡还是对自家上代显卡而言都是如此,能效简直是碾压般的存在。
在GM107、GM204、GM206核心之后,NVIDIA在Titan X显卡上又使用了GM200核心,而且是完整版的GM200-400核心,该卡发布于2015年3月18日,它使用的GM200核心拥有6组GPC单元,24组SMM单元,每组SMM单元128个CUDA核心,总计3072个CUDA核心,而显存控制器也从之前4组64bit GDDR5变成了6组,位宽384bit。
不过6月1日NVIDIA又推出了GTX 980 Ti显卡,使用的也是GM200大核心,但是阉割版的GM200-310核心,CUDA核心数为2816个。GTX 980 Ti显卡的详细规格如下:
2016年NVIDIA Pascal架构:16nm制程红利,计算游戏核心再分离
时间很快到了2016年,4月初的GTC大会上NVIDIA发布了Tesla P100加速卡,使用的是GP100核心,这是pascal架构的大核心,制程工艺升级到了16nm,这种工艺则是高性能工艺,所以在Pascal显卡上其GPU频率大幅提升,起步就达到了1.6GHz,加速频率达到2GHz稀松平常。
在Pascal显卡上,最大的特色就是先进工艺带来的制程红利,不过这时候的GPU架构再次出现了游戏、计算的分离,出现了GP100、GP102两种大核心,而且使用的架构、显存都是不同的,其中GP100是纯粹的计算核心,不仅有3584个单精度CUDA核心,双精度核心也达到了1792个,重新回到了1:2的比例。
此外,计算用的GP100核心使用的是HBM 2显存,等效位宽4096bit,带宽达到了720GB/s,虽然没有实现HBM2显存1TB/s的满速带宽,但带宽已经比当时的GDDR5显存大幅提升了,只不过HBM2显存实在太贵了,别说2016年,直到2019年的今天都远未普及。
在Titan X Pascal之外,桌面的GTX 1080 Ti显卡也是GP102核心,除了显存容量、位宽的变化之外,GP102核心的SM单元架构也跟GP100核心不同,后者为了追求更高的计算性能,每组SM单元的CUDA核心数减少到了64个,但集成了更多组SM单元,高达56组,而GP102核心虽然也是3584个CUDA核心总数,但只有28组,每组SM单元的数量回归到了Maxwell的128个,所以这一代游戏及计算再次分离,本质上来说GP100是真正的Pascal核心,而GP102核心是16nm加强版的Maxwell架构。
从GTX 1080的GP104到GTX 1080 Ti的GP102核心,它们的SM单元架构倒是一致的,只是CUDA核心数量的区别。
除此之外,GTX 1080系列显卡在在技术上也比GTX 980系列有所增强,使用了频率更高的GDDR5X显存及更先进的内存压缩算法,改进了异步运算及对VR的支持。
在NVIDIA的路线图上,原本Maxwell之后是Volta,后者技术迈进的更多,但因为种种原因,Volta显卡进度不如预期,所以中间多了个Pascal显卡,这也可以解释为什么GP102/104核心的架构其实比Maxwell没什么质的变化。
但是Volta就不同了,这又是一款真正为计算而生的显卡架构了,与Pascal相比,GV100核心的CUDA核心数一下子增加到了5120个,尽管使用了16nm改良版的12nm FFN工艺,但它各方面规格都很惊人——815mm2核心面积、211亿晶体管、5120个CUDA核心、15TFLOPS浮点性能等等。
在GV100大核心中,每组GPC单元是14个SM单元,总数应该是84组SM单元,但是现在Tesla V100跟Tesla P100一样都不是完全体,前者启用了56组SM单元,后者启用了80组SM单元,总计80x64=5120个CUDA核心。
除此之外还有FP64单元,GV100依然延续了GP100中FP32:FP64=2:1的比例,每个SM单元中有32个FP64单元,理论上有2688个FP64单元,实际启用的是2560个。
Volta架构如此之特殊,以致于NVIDIA并没有推出对应的消费级产品,除了TITAN V这一款显卡,TITAN V从Tesla V100的4096-bit、16GB缩减为3072-bit、12GB的HBM2显存,显存频率850MHz,等效数据频率1700MHz,带宽高达652.8GB/s,另外TITAN V的L2缓存减少到4.5MB,这些使得在深度学习运算性能上稍不如Tesla V100(112TFLOPS),显卡供电接口是6+8pin,显卡TDP 250W,显示接口为3个DP+1个HDMI。
2018年NVIDIA Turing架构:追光十二年,RTX全新品牌诞生
Volta这一代没有什么主流游戏卡问世,但这也没影响NVIDIA的显卡布局,GTX 10系列显卡时代恰逢矿卡市场再次火爆,导致GTX 1060等显卡完全不愁销路,2017到2018年上半年的时候NVIDIA及AMD都不担心互相抢市场了,光是卖矿卡就大赚特赚了,所以GTX 10系列的Pascal显卡升级换代周期长达2年多,发布2年之后不光没有退市,还没有降价,简直是显卡市场上的奇迹。
不过2018年下半年了,矿卡崩了,NVIDIA及显卡厂商即便有矿卡库存问题,还是要推新架构,8月底的德国科隆游戏展上NVIDIA正式发布了Turing图灵架构,当然这次其实是游戏展之前的SIGRAPH大会上现发布了面向工作站的Quadro RTX 8000/6000系列专业卡。
除了RTX之外,图灵显卡也支持Volta的Tensor Core,可以用于AI加速,NVIDIA之前也提供了多种显卡可用的AI玩法,比如DLSS抗锯齿技术,不过相比RTX光追技术,AI加速在游戏中应用太少,不够吸引人。
在SM单元架构中,图灵这一代又有所不同了,不同于Pascal架构中的GP102/GP104核心,更像是Volta架构的GV100大核心,因为每组SM单元又变成了64个CUDA核心,其中RTX 2080 Ti使用的TU102核心一共分为6组GPC单元,每组GPC单元又拥有12个SM单元,一共是72个SM单元,但RTX 2080 Ti也只用到其中的68个而已,算下来68×64=4352个CUDA流处理器。
至于RTX 2080显卡使用的TU104核心,完整版的TU104核心依然是6组GPC单元,不过每组GPC改为8个SM单元,一共是6×8=48个,而RTX 2080的GPU核心是TU104-400,只用上了46组,还有预留有2组空缺的,46×64=2944个,规模要比RTX 2080 Ti小多了。
支持RTX光追是图灵显卡的特色,不过RTX光追除了游戏数量的问题之外,还有一个问题就是它对性能的要求还是太高了,所以在图灵显卡这一代中NVIDIA的市场策略也不同,支持RTX技术的显卡主要是RTX Titan、RTX 2080 Ti、RTX 2080、RTX 2070及RTX 2060,而不支持RTX的则变成了GTX 16系列,包括GTX 1660 Ti、GTX 1660及刚刚发布的GTX 1650显卡。
总结:五代GPU性能大幅提升,能效更高,但价格也更高
从2012年的Kepler显卡到今天为止,NVIDIA的显卡已经推出了五代架构,如果算上每代中的大核心与游戏核心,那就是至少10款了,这些显卡的制程工艺也从28nm一路升级到16nm、12nm。在游戏性能上,根据超能网的显卡天梯榜,如今的RTX 2080 Ti显卡的性能是GTX 480显卡的7倍左右,而GPU的晶体管数量也从30亿增长到了210亿,与性能增幅基本同步。
如果考虑到性能、功耗,那么多年来NVIDIA显卡的能效增长还是很明显的,毕竟大核心的TDP功耗多年来一直维持在250-300W之间,但性能已经增长了6-7倍。
此外,前面我们没有详细提及历代显卡的价格,但是这个趋势也很明显了,GTX 400到GTX 700阶段中,高端显卡的售价都是3999元,但是这几年来价格已经水水涨船高,NVIDIA这边尤其明显,Titan显卡从最初7999元的价格一路涨到了2万元,而主流市场上的旗舰显卡价格也涨到了6000元以上,RTX 20这一代涨价更多,RTX 2080 Ti售价直奔9999元,这是以往Titan显卡的级别了。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~