硬科技:一窥NVIDIA「真正人工智慧」Volta的执行单元细节
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了硬科技:一窥NVIDIA「真正人工智慧」Volta的执行单元细节相关的知识,希望对你有一定的参考价值。
参考技术A毕竟是享有IEEE这响亮品牌「加持」的研讨会,加上坐在台下的听众多半又不是呆头呆脑的「诸多媒体先进」,诸多在HotChips趁机宣扬国威并现场隔空较劲的晶片厂商,多半都会讲些和技术行销简报「很不一样」的深度内容。
NVIDIA这次公布了「人工智慧最佳化」GPU微架构Volta(GV100)的执行单元细节,颇有看头,平日很难得看到绘图晶片厂商愿意打开「黑盒子」给大家品头论足,尤其是扮演着GPU关键灵魂,也就是NVIDIA从Fermi一路改名SMSMXSMM再改回SM的「多执行绪SIMD(或SIMT)处理器」,过去大家都在乱猜一通,现在总算有机会一窥其庐山真面目。
「分而治之」的NVIDIA产品发展策略
如果今天要笔者马上评论「为何NVIDIA可以在高阶绘图市场压倒AMD」,唯一可勉强挤出的大概也只有一句话:NVIDIA集中足够的资源,采取分散风险的多样化产品研发计画,而不像同时经营CPUGPU两条战线、蜡烛两头烧的AMD,被迫鸡蛋都放在同一个篮子内。
在2013年的NVIDIA时程表,原本Maxwell要直接演进到Volta。
但2014年,在Volta前就多出一个Pascal了。
所以2016年「泛用」的Pascal,2017年「专用」的Volta,打破了NVIDIA两年推出一个崭新微架构的节奏,搞不好NVIDIA以后的「钟摆」就以一年为期,也说不定。
以事后诸葛的角度回顾NVIDIA「小步快跑」的决定,一点都不让人感到意外,因为Volta的确是NVIDIA史上第一个真正针对人工智慧量身订做、兼顾「学习/训练」与「推论/预测」的微架构。
逐步深入、抽丝剥茧Volta微架构的SM细节
Volta的单一SM规划和「前前代」Maxwell雷同,切成四块「次核心(Sub-Core)」。其实图中少画了载入储存单元,但好像也无关紧要了。
四块次核心共用L1指令快取、L1资料快取(与材质和区域共享记忆体共用128kB容量,NVIDIA宣称这样比较有弹性)、与晶片共用的记忆体子系统(6MB第二阶快取和12GBHBM2主记忆体)。
每个次核心单一时脉执行一个由32执行绪组成的「Warp」,想的简单一点,一个Warp就代表画面上的一个小方格。
次核心内的执行单元就是重头戏了,Volta包含五种截然不同的独立运算功能,这让它能够在众多GPU中鹤立鸡群。
32位元浮点(FP32):16组,「CUDACore」的同义词,如执行16位元半精度,输出率将会倍增。特殊运算(MUFU):4组,特殊功能单元,负责平方根、倒数、sine和cosine等三角函数。64位元浮点(FP64):8组,高效能运算必备品,消费市场就 *** 或著根本看不到。整数运算(INT):16组,人工智慧一定用得到,看看Google第一代TPU就知道了。张量运算核心(TensorCore):2组,执行4x416位元浮点乘积和,适用于特征辨识的卷积运算(ConvolutionalNeuralNeork,CNN)。值得注意的是,为了确保执行单元随时有指令可跑,次核心具备「L0」指令快取。
一颗GV100有640个TensorCore:每个次核心2个x4个次核心x80个SM=640个。
可理可证,GV100有5120个CUDAcore,Fermi完全体GF110的整整「十倍」,时间过得真快。
最后,也是最重要的,Volta可实现更精细的执行绪执行资源管理,每个Warp的32执行绪,都有其个别独立的程式计数器(ProgramCounter),更利于多工与虚拟化应用。
无所不备则无所不寡
Volta(GV100)这些补强,特别像独立的64位元浮点单元、独立的整数运算单元、与为了强化推论(Inference)而生的16位元浮点乘积和张量(Tensor)运算单元「TensorCore」,都是对一般游戏娱乐或高效能运算而言,敬谢不敏的化外之民,即使Pascal后期型号(GP102/GP104/GP106)也追加了对8位元短整数的支援性,但仍看不到Volta的车尾灯,而那时的AMD,大概只能仆在马路上,背后深深烙印着两条被NVIDIA活活辗过的轮胎痕。
同样的「分工」精神,也早已成为NVIDIA自「让GPU更接近泛用CPU」的Fermi微架构为起点,产品规划的重要特色:具备高效能64位元浮点运算的高阶应用,都会有专属的大型化晶粒,像GF100、GF110、GK110、GK210、GP100、GV100等(Maxwell世代没这样搞,算是特例),以免消费市场压根儿不需要的「外挂」,伤害产品竞争力,如不必要的多余制造成本与耗电量等。
很不幸的,就刚好就是AMD的弱点,想要单一设计面面俱到,下场就是两边都顾不到,Vega就是很好的血淋淋例证。疑?怎么又让笔者想起Fusion了?
以上是关于硬科技:一窥NVIDIA「真正人工智慧」Volta的执行单元细节的主要内容,如果未能解决你的问题,请参考以下文章
Oracle将Nvidia基于Volta的Tesla GPU带入云基础设施
嵌入式人工智慧大跃进, NVIDIA 推出具 Pascal 架构的 Jetson TX2 单板电脑