特斯拉“芯”事:十问十答读懂特斯拉为何要研发超级计算机Dojo
2022-10-03
作者: J叔谈芯
来源:腾讯科技
编者按:在今年的特斯拉AI Day上,Dojo再次吸引了眼球,特斯拉宣布即将在2023年推出算力更强的ExaPOD(Dojo机柜)。早在2019年的Autonomous Day上,马斯克就提到过Dojo,称Dojo是“能够利用海量视频数据,做无人监管标注和训练的超级计算机”。超级计算机是什么?如此受到特斯拉重视的Dojo究竟有多么重要的战略意义?AI芯片的性能,只和算力强弱有关吗?
腾讯科技新产研·芯片系列通过产业链、投资研发、生产制造、人才培养和政策法规等不同角度切入,真实、客观、全面的反映行业的现状。本期为系列策划第12期,特邀请芯片行业从业15年的行业老兵J叔,通过十问十答带你读懂特斯拉Dojo。
丨划重点
●Dojo是一台专门用于AI训练计算的超级计算机,据Dojo项目负责人介绍,特斯拉Dojo是史上最快的AI训练计算机。
●特斯拉自研神经网络训练芯片——D1芯片,担当着Dojo完成AI模型训练的重任,相比于业内其他芯片,据特斯拉称,同成本下性能提升4倍,同能耗下性能提高1.3倍,占用空间节省5倍。
●过去,特斯拉依靠Nvidia的GPU构建AI训练机。研发D1芯片和Dojo,特斯拉可以针对性地基于自身需求定制专用的AI芯片架构,进而让算法模型与AI芯片架构匹配优化。从竞争战略上来讲,造芯使得特斯拉从产业价值链上,寻找技术制高点,并最终达到差异化竞争。
●算力是一颗芯片的物理性能上限,但是一颗芯片想要体现出好的实用性能,光有算力是不够的。从特斯拉的使用场景来看,对自动驾驶场景与模型的优化、接口的丰富度、计算任务的可扩展性,乃至对车厂算法模型的迭代易用性,这都是要考虑的因素。
正文:
丨特斯拉Dojo是什么?
首先,需要简单了解一下人工智能。
人工智能(AI)在逻辑上可以认为是一种计算系统,分为训练和推理两种计算。简单来理解,如果将智能当做技能集合的话,每一种技能叫做一个 AI模型,学习技能的过程就是训练一个模型,利用技能来处理事情的过程就是用模型进行推理。
打个比方,如果把一个人工智能模型比喻为一个工程师,想要工程师能够投入工作,必须要有一个培训中心对他进行训练。那超级计算机,就相当于这个培训中心。
不论是训练计算还是推理计算,都需要在大型的服务器或者超级计算机中进行。以训练为例,通常来讲,工程师会先构建大型服务器集群,然后将含有AI芯片的计算卡置于每一台服务器之中,通过网络把这些服务器整合起来,形成训练集群。比如NVidia GPU服务器集群,google TPU集群等。或者,也可以将这些计算芯片,整合在一台大型“计算机”中,这就是超级计算机。
Dojo就是一台专门用于AI训练计算的超级计算机。特斯拉的智能驾驶(包含一定程度的自动驾驶),需要不断地从在跑的数百万辆汽车所采集到的现实世界数据中进行训练,提高智能程度。在过去,特斯拉也是依靠Nvidia的GPU构建训练机。随着自研 AI 训练芯片 D1的研发成功,基于D1芯片的超级计算机也就应运而生了。
丨特斯拉D1芯片是什么?
D1是特斯拉自主研发的AI训练芯片,类似于Nvidia的A100和H100所起的作用。
为了理解D1“芯片”,我们这次暂时跳出通常我们肉眼可见的黑色方块,或者被金属固件和基板封装好的样子,按照特斯拉自己定义的一些概念,来逐步理解这颗特殊的芯片。在这个过程中,要克服当前中文互联网上不同的翻译(甚至有些是机器翻译的痕迹)和英文专有名词造成的困扰。
一般来说,一颗芯片的诞生,是从Wafer上切割下来,成为Die,经过封装、测试,成为一颗可用的芯片。而这次特斯拉使用了一种所谓的System On Wafer的方式,也就是说,他并没有将每一颗Die切割进行独立封装,而是将25个D1的Die的Wafer,散热部件、功率器件、电源与控制等,一起形成一个Tile,这个Tile大约是1平方英尺的大小。
就芯片角度讲,基于354个功能单元(训练节点)形成一个D1芯片核心,具体参数如下图:
基于25个D1芯片核心和40个输入输出Die和其他部件,形成一个训练Tile,如图中Compute Plane指的就是5×5个D1核心:
从外观上人们可以看到的,正是这个Tile,在中文互联网中被翻译成,瓦片,大约长这个样子:
丨D1芯片和Dojo的关系是什么?
Dojo,是通过组合Tile(由D1芯片组成)作为主要计算单元,整合了CPU、存储、通讯接口、电源等模块的超级计算机。
上文提到,25个D1为基础形成一个Tile,进一步,12个Tile为基础组成一个Rack,最后,10个Rack,被整合成一个ExaPOD,这在中文互联网上被称为Dojo ExaPOD集群。据Tesla称,与业内其它产品相比,同成本下它的性能提升 4 倍,同能耗下性能提高 1.3 倍,占用空间节省 5 倍。
业界一般会有两种方式来设计面向任务的计算架构:1)服务器集群;2)超级计算机。曾经要进行大型的计算任务,只能靠大型计算机,算力提升难度和建造成本都很高。而随着计算任务的多样化,人们发现,一部分的计算任务可以将许多计算机通过网络连起来,每台计算机的升级难度和造价都很低,这就进化出了服务器集群。当前商业上大部分的IT设施,都是基于这种方式搭建的。主流互联网公司的数据中心,不仅在承担着通用的信息处理和计算任务,也进行着人工智能的训练和推理任务,因此,非常多的公司和数据中心,都在以Nvidia的训练芯片V100和A100,来构建训练服务器集群。
另一方面,在许多进行繁重的科学计算的领域,依然保持着使用大型计算机的习惯,并且由于GPU在浮点运算的特长,也有许多机构基于GPU来构建超级计算机。这样的超级计算机,不仅可以进行AI的训练与推理计算任务,也可以承担类似于求解天气预报、导弹弹道与卫星轨道计算、天体运动探索等科学计算任务。
Dojo,就是专门针对于AI训练(尤其是针对于广义的视觉模型训练)的超级计算机。
丨Dojo的算力有多强?如何计算Dojo的算力?
Dojo ExaPoD集群由120个Training Tile,3000个D1芯片构成。而每块D1芯片的算力是362 TFLOPs(BF16/CFP8)或者22.6 TFLOPs(FP32)。所以Dojo集群的总算力在BF16/CFP8下是:3000 x 362 TFLOPs ≈ 1.1 EFLOPs,在FP32下是:3000 x 22.6 TFLOPs ≈ 67.8 PFLOPs。
这里需要解释的是,算力需要基于什么样的数据表达方式下来衡量。所谓数据表达方式,指的是在计算机中,用以表达或近似表达任意实数的方式,比如在这里提到的BF16和FP32,指的就是浮点数,与此对应的还有定点数(INT)。正如当我们来描述手部力量有多大的时候,需要指出是双手还是单手力量。
丨与特斯拉D1芯片类似的现存芯片有哪些?
通过上面的分析,可以知道D1芯片的主要功能和特征。传统来说,云端训练芯片是Nvidia的领域,甚至可以说是绝对垄断的地位,先后推出了诸如V100、A100和H100的系列产品,也有官方在售的训练服务器和集群产品。除此之外,AMD、Graphcore、以及华为也有云端训练芯片,甚至intel这位通用计算的大佬,也通过收购整合Habana推出了针对AI训练和推理的专用芯片。
丨自研芯片对特斯拉的战略意义是什么?
刚刚过去的AI Day上,特斯拉Dojo团队的重要成员这样说:“从本质上来讲,特斯拉是一家硬核科技公司,超算是我们想做的,我们有那么多数据需要进行相应的训练就需要有非常强的算力,算力是非常重要的,可以说算力是训练的根本,如果没有算力,那训练就是非常难执行的,或者训练效率非常低。”
正如前文所提,特斯拉的智能驾驶(包含一定程度的自动驾驶),需要不断地从数百万辆汽车所采集到的现实世界数据中不断学习(训练模型),提高智能程度。在过去,特斯拉主要是依靠Nvidia的GPU构建训练集群和超级计算机。然而,考虑到特斯拉主要的场景,主要是对视觉信号进行处理(训练和推理),因此,针对性地基于视觉信号订制专用的AI芯片架构,可以将算法模型与AI芯片架构匹配优化,不仅使得其可以更高效地处理信息,还可以在能源消耗、集群成本和客制化需求上符合特斯拉自身的利益诉求。
而另一方面,当传统车企和造车新势力都进入市场进行竞争时,从产业价值链上寻找技术制高点并最终达到差异化竞争,就会是必经之路。从这个角度出发,芯片、电池与新材料技术、新基础建设等,就会是兵家必争之地。大家也可以看到,特斯拉在这几个方向上都有布局和不错的成果。
丨目前市场上有哪些自动驾驶芯片?
既然说到特斯拉造芯,那就不得不提当前业内如火如荼的自动驾驶芯片。也正如前述,在车上所用到的AI算力(可以近似理解成芯片),是用来做推理计算(inference)的。
全球范围来看,在自动驾驶领域的芯片巨头依然是Nvidia,官方是这么描述的:NVIDIA DRIVE Hyperion 是用于设计自动驾驶汽车的完整开发平台及参考架构。此架构通过集成基于 NVIDIA Orin 的 AI 计算与完整的传感器套件,加速开发、测试和验证。DRIVE Hyperion 拥有适用于自动驾驶的完整软件栈 ,以及可无线更新的驾驶员监控和可视化功能 。这样可在车辆的整个生命周期内添加新的特性和功能。其中,Orin正是专门为自动驾驶推出的芯片。在2021年,Nvidia宣布将会在2023年推出替代产品Atlan。然而仅仅在一年之后,大约在两周前,又宣布将会推出算力高达2000TOPS的Thor作为Orin的接任者。
处于同一梯队的还有MobileEye,其通过芯片+算法的打包方案,成为 ADAS 时代的引领者,甚至制定了 ADAS 主要功能的标准。也正是因为其行业地位,intel将其纳入囊中,甚至允许其保持独立运作,这在被intel收购的公司里凤毛麟角,为数不多的被intel收购还存活较久的公司之一。所推出的EyeQ 代系是其主打产品线,曾几何时,国内的造车新势力,蔚来和理想,采用EyeQ4芯片还是其主打卖点之一。
除了这两家第一梯队的芯片公司之外,国外的高通、国内的华为,以及地平线和黑芝麻也都有产品推出。地平线的征程系列、黑芝麻的华山系列,据说已经有整车在装备。
另一方面,整车厂也在开始布局造芯,国际的梅赛德斯-奔驰、大众,国内的吉利、蔚来,都在通过各种方式布局智能驾驶芯片。
丨自动驾驶芯片算力越强越好吗?应该从哪些维度去看待自动驾驶芯片?
对于普通读者而言,算力确实是一个看待自动驾驶芯片的维度,毕竟这是一颗芯片的物理性能上限。然而对于专业工作者来讲,正如前文讨论云端芯片时所述,一颗芯片想要体现出好的实用性能,光有算力是不够的。从使用场景来看,对自动驾驶场景与模型的运行优化、接口的丰富度、计算任务的可扩展性,乃至对车厂算法模型的迭代易用性,这都是要考虑的因素。随着智能座舱需求进一步丰富,以及对新能源汽车对整车架构的改变,对智能驾驶芯片所具备的功能与性能也提出了更新、更高的要求。近年,Nvidia逐步侵蚀Mobileye的市场与客户,可窥见个中缘由。
丨智能汽车上,还会用到哪些芯片?
当前智能汽车,本质上还是一台车,因此,除了为实现智能而新引入的计算芯片、通信、存储、传感器与相关配套元器件之外,传统车上所需要的芯片,大体都还在。如果这台车还是新能源汽车,那么,还会增加电源管理类、功率器件类的芯片。为了便于理解,可以略作分类:
主控类:传统汽车上的各分布式MCU(对车辆各功能进行控制),智能驾驶的AI SoC类芯片(为实现辅助、自动驾驶提供支撑)和智能座舱下的SoC芯片,都可以放入此大类中理解;汽车里面的电子控制系统、信息娱乐系统、动力总成系统、车辆运动系统等各种系统功能想要正常运行的话,均需要用到这类型的功能芯片才能得以实现,其中目前最流行的“自动驾驶系统”也离不开功能芯片;(ECU(电子控制单元)和ESP(车身电子稳定系统)PB(驻车制动器)、VCU(整车控制单元)、TCU(变速箱控制单元)。座舱内的音、视频娱乐系统,从SoC,到各种DSP、音频处理与放大,都属于此类;
功率类:功率开云棋牌官网在线客服主要运用在汽车动力控制系统、照明系统、燃油喷射、底盘安全等系统当中,其中传统燃油车一般将它运用在启动与发电、安全等领域;新能源汽车则需要大量功率开云棋牌官网在线客服来实现车辆频繁的电压变换需求,此外电动车的许多零部件中也少不了功率开云棋牌官网在线客服的加持。电动汽车的核心零部件IGBT芯片就是一种功率开云棋牌官网在线客服芯片;
传感器类:用于对车辆各种状态信息的采集,如车速、各种介质的温度、发动机运转工况、地面信息等。传统上例如氧传感器、胎压传感器、水温传感器、电子油门踏板位置传感器等等,新能源车与智能车上,还包含图像传感器、雷达、超声、声音、更加精密的动作传感等。随着智能驾驶和智能座舱的逐步引入,对传感器的需求开始大幅度增加,技术与功能上也要求更加丰富;
信号处理与通讯类:用于车内各模块、车间甚至车与广域网的信息传输与交互,包含传统上的CAN总线、USB总线与车载以太网,也包含现在V2X以及T-Box和娱乐系统等广域网要求。
存储芯片与其他类:有SoC、CPU、GPU这一类主控芯片的地方,都需要DRAM、FLASH等存储类芯片,在汽车里亦是如此。尤其当智能要求越来越高,对存储类芯片的规格、种类与数量的要求也越来越高。甚至在新能源汽车里的BMS(电池管理系统),要对数据进行高频的读写,这对存储器的擦写循环次数、速度和寿命都有着要求。
需要说明的是,由于设计安全与环境问题,车载芯片对于可靠性及安全性的要求也更高,对物理、电气性能有着更为严格的要求,工作温度范围可宽至-40℃~155℃,对高振动、多粉尘、电磁干扰等也有着明确的要求。“车规级”芯片、模块需要经过严苛的认证流程,包括可靠性标准 AEC-Q100、质量管理标准ISO/TS 16949、功能安全标准ISO26262等。
丨整车品牌下场造“芯”,具体造的是什么“芯”?有什么战略意义?
正如前面所述,整车品牌也开始自主设计芯片,比如奔驰、大众、蔚来、吉利和小鹏。在这些厂商中,主要还是从智能驾驶、智能座舱、新能源等新应用需求出发而进行设计的。一般来讲,设计的芯片或者是具备整合了进行AI推理计算的NPU、信号处理的DSP以及CPU的SoC芯片,或者是针对特定应用的专用芯片(比如针对单模态/多模态AI处理的专用AI推理芯片),或者是类似于IGBT这种核心功率器件。
正如在第6问中所述,从产业价值链上寻找技术制高点来提高竞争力,是整车厂的战略目标。在过去,传统车企可以从提高能量转换效率(发动机)来提高竞争力,而今,涉及到驾驶体验、智能化程度和安全驾驶的层面讲,芯片已经是其中跨不过的坎儿。举个例子,MobilEye提供的是芯片+算法的整体黑盒子方案,采用此方案的各家车厂都无法将自己在车辆实际行驶中获得的知识(训练模型),运用到整车中。这样一来,就大大制约了各家车厂的差异化竞争,而这也是近来纷纷转到Nvidia方案的原因。而从Tesla的案例中可以看到,特斯拉已经不满足于选用通用的计算平台,而是要更加差异化,和自身的算法、模型、数据的丰富程度(整车市场占有率)深度结合,不断加强自身的竞争壁垒。
更何况,还有供应链安全(不仅由于地缘政治格局,还有产业链竞争格局)的考虑。