近日,特斯拉的人工智能日举办的如火如荼,不仅有汽车用芯片、零部件和系统还有软件上的机器学习和神经网络,由这些令人惊喜的软硬件结合的汽车又会在业界掀起“血雨腥风”。Tesla CEO 埃隆马斯克和芯片设计团队在超过三个小时的展示中提供了大量的技术细节(据统计,此次演示吸引了超过163万次浏览),长达三个小时的展示重点都在本文列出。
Tesla AI 日演示视频截图(来源:Tesla)
神经网络
特斯拉设计了一种灵活的可拓展的分布式计算机体系结构,专门针对神经网络进行了特殊优化,最早使用这种架构是D1专用芯片上,其拥有354个训练节点,每个节点都有一个性能强大的计算单元,这种多节点分布式的CPU结构专门为高性能神经网络和机器学习而设计,对于32bits的浮点运算有着64 GFLOPS的优势。对于这种拥有354个CPU的芯片,32bits浮点运算最大性能为22.6TFLOPS,而对于16bits来说,D1芯片最大性能可发挥到362TFLOPS。
Tesla AI Day展示内容汇总(图源:EE times)
特斯拉还引入了两个神经网络训练系统:“the Training Tile(训练模块)”和“ExaPOD”,并且在每个训练模块的封装中包含25个D1芯片,这25个芯片共同构成包含8850个训练节点的系统。对于32bits的浮点运算,一个训练模块最大性能为565 TFLOPS。另一个重点的亮点是ExaPOD将120个训练模块连接到一个系统中,将3000个D1芯片和106万个训练节点连接起来,对于32bits浮点运算来说,ExaPOD最大性能将高达67.8PFLOPS。
D1芯片和Dojo神经网络训练系统可以说是Tesla未来的方向,并且其背后的研发资金投入也是高的吓人,后续Tesla可能会和业界其他公司分享这些先进技术----给公司带来全新的收入来源,就像之前出售给其他OEM商的BEVs技术。下表中列举出Tesla神经网络产品的最新亮点,表格中数据是又EE times 资深编辑 Egil Juliussen整理,还加入了很多芯片和架构的释义和理解。
图源:EE Times ---Egil Juliussen
特斯拉设计目标是最大限度的平衡芯片和系统的性能----计算性能、高带宽和计算节点间的低延迟通信。业内目前有一个共同的难题是高带宽和低延迟一直难以让计算节点扩展到成百上千个,但是此次Tesla给业内展示的似乎已经成功的将所有参数组成一个网络架构中,也找到了其中最大性能的微妙平衡。
训练节点
训练节点是D1芯片上最小的的训练单元,拥有1个64位4线程的核心处理器,可以执行2维矢量8x8维的乘法运算。并且该中央处理器指令集架构是为机器学习和神经网络训练任务量身定做,该CPU支持多种浮点运算形式----8位、16位、32位、FP32、BFP16以及一种全新的格式CFP8和FP8格式。并且该CPU内置了1.25MB高速SRAM存储器,用于程序和数据存储,并且使用ECC纠错算法来提高可靠性。
为了获得训练节点之间的低延迟,Tesla选择了一个信号主频2GHz时钟频率,据悉该频率下信号可以传播的最远,这也决定了不同训练节点之间的物理距离,以及CPU和其他电子设备之间的配合程度(CPU以每秒512G bit的速率与其他模块通信)。
D1 芯片
整个介绍中最令人印象深刻的当属D1系列芯片了,这款专门为神经网络训练专用芯片采用了7nm工艺,在约645平方毫米的芯片上集成了500亿个晶体管,其内部有超过17.7公里长的导线和400W左右的功耗。不仅如此,D1芯片拥有一个高速率、低功耗的输入输出环,而一共有576个通道环绕在芯片周围,每条通道信号转换速率为112Gb/ps,最大的片上传输速率高达10Tb/ps,板载芯片间传输速率也高达4 Tb/ps。
我们回过头来看D1芯片拥有354个CPU,每个CPU都配备了1.25MB的SRAM缓存,加起来就有442MB的缓存空间,在354个CPU同时训练时就能发挥出其堪称“恐怖”的运算力。
训练模块
Tesla的训练模块是其人工智能系统的基石,一个训练模块集成了25个D1芯片,并且这25层die都被封装在一个多芯片专用模块(MCM)中,这也是目前业界最大的MCM专用封装芯片了。Tesla这种封装包括多层电源和控制、电路分配、计算核心和冷却散热通道等系统,并且如此大的封装也被安装在其专用的IT中心内,而非自动驾驶车辆上。
Tesla MCM 封装(图源:Tesla)
这种MCM封装内包含25个CPU运算核心其16bits浮点运算算力高达9千兆,而32bits浮点算力达到了565千兆,并且Tesla还将12组2x3x2组合的训练模块再安装到一个巨型计算机中,并命名为训练矩阵。
ExaPOD
由上述多个训练模块组成目前最大的神经网络训练系统----ExaPOD,拥有120块训练模块,加起来一共有3000个D1芯片和106.2万个训练节点,如此多的硬件设备被安置在10个服务器组机柜上。整个ExaPOD系统对于16bits浮点运算来说能达到的最大算力性能为1.09 Exa FLOPS(Exa为百亿亿次,10的18次方)。
Dojo软件和DPU
Dojo软件的设计初衷是为了支持各种规模的神经网络训练,Tesla还拥有自主研发的编码器,可以对训练模块、D1芯片训练节点和ExaPOD等系统进行整合,还兼容目前十分流行的Pytorch开源机器学习库来进行强化训练。
软件结构(图源:Tesla)
软件允许大型神经网络被分割成零星的部分,用来满足不同的并行计算,模型训练和平行数据传输等需求,从而加速整个神经网络的训练。编译器还会对多种技术提取并行,利用数据模型图进行底层优化,减少内存占用。
Dojo处理器还可用于IT中心的主机通信,通过PCI-E 4.0链接到D1处理器系统,并且还和D1 CPU共享高速DRAM缓存。Dojo内的DPU由接口处理器、一个或者多个计算单元构成,运行在DPU系统的神经网络可以随时随地根据需求放大和缩小。
行业基准
特斯拉的神经网络训练芯片、系统和软件令人印象深刻,超高带宽和极低的系统时延几乎是业内难以企及的高度,而全新的MCM封装也是业内首创;不仅仅硬件创新其软件和系统层面也有着令人震惊的进步,神经网络训练模型和潜在应用于全新的自动驾驶技术软件,给业界带来无限幻想。
似乎这一切都在向我们透露出特斯拉希望依托神经网络算法和强大的硬件性能加持,使其电动汽车达到L3/L4级别的自动驾驶,而埃隆马斯克能否给我们带来划时代的“惊雷”呢?就让时间告诉我们答案。
责编:我的果果超可爱
编译自:Tesla AI Day Perspectives ----EE times