特斯拉造Dojo超算,台积电出来认领:里面的这个东西是我做的

0

为更高效、更经济的实现针对神经网络的训练,特斯拉打造了Dojo超级计算机,并在上周五的AI Day上做了首秀。

彼时,AI Day演讲已经进行到最后一个环节,Dojo超算项目负责人Ganesh Venkataramana正站在舞台上滔滔不绝。如何在人工智能训练芯片D1的基础上,构建Dojo超算系统的基本单元——一种集成了25个D1芯片的训练模块(Training Tile)?

特斯拉找到的一个关键答案是用台积电的InFO_SoW整合扇出技术,这是一种芯片先进封装技术。当Ganesh说着“这是真的”,并把一块做好的训练模块展示给台下观众时,他理所应当地得到了掌声。

但有趣的事情不止于此。据公开信息,上一个使用了这个先进封装技术的公司是美国创企Cerebras。换言之,特斯拉是已知使用到该技术的第一家汽车公司(虽然现在的特斯拉已经越来越像是一家人工智能公司了)。

Dante Tech曾判断超算可能会成为自动驾驶下一个发展阶段中的核心生产力工具,而新的需求同时也推动了相关先进技术的应用。汽车产业产业链的价值重构,正与其他的产业变革发生着奇妙的联动。

Dojo超算拆解

我们从特斯拉那里拿到的资料中,对于Dojo超算有一个有趣的形容——“工程学的创举”。这意味着Dojo超算上所做的创新更多属于应用过程中的创新,对于这个说法,特斯拉应该是认的。这就类似于大家手里都有一本字典,学霸用起来效果更好,但就字典本身而言倒没什么特别奇怪的。

回到Dojo超算,特斯拉的具体目标是要做到:达到最佳的AI训练性能、能够支撑更大和更复杂的神经网络模型、并能够优化能耗成本。

而要实现目标,特斯拉认为最紧要的事是克服带宽和延迟的问题。因为对于超算而言,算力扩展是“小事”,算力可以通过堆芯片堆上去,解决数据传输的带宽和延迟瓶颈才是真正的难题。

如何解决这个难题?特斯拉的解题方法是在硬件(芯片、系统、计算集群)和软件层面上同时入手,做优化。

关于Dojo超算的现有文章中提到软件层的较少。但软件层实际上很关键,因为并不是所有的工作都需要依靠巨大的计算集群来完成。在软件层面上,特斯拉开发了一款虚拟化工具DPU(Dojo Processing Unit)。

一个DPU可以由一个或者多个D1芯片构成,同时搭配接口处理器和主机,最重要的是它可以根据运行在上面的算法的大小进行扩展或者缩小,具有相当的灵活性。

在整个软件层面,特斯拉构建了一套由PyTorch(一个深度学习框架,特斯拉对其进行了扩展)、编译器、驱动程序、分析器和调试器共同构成的软件栈。

Dojo超算的硬件设计,从内至外可以分为芯片、系统、计算集群三个层级。

芯片上承载了最小的计算元素,这里被称为「训练节点」。训练节点内置一个4线程的超标量CPU、1.25MB SRAM缓存、低延迟的数据交换结构、SIMD单元、多个8X8乘法矩阵等。同时,每个节点内部和四周都布满了用于数据传输的线路。

每个训练节点的性能表现如下:算力在BF16/CFP8数据格式下,为1024GFLOPS(每秒执行浮点运算次数超过了1万亿次),在精度更高的FP32格式下,浮点运算性能达到64GFLOS(每秒执行浮点运算次数超过640亿次)。

354个这样的训练节点连接到一起,构成计算阵列(compute array)。演示为正方形的计算阵列,再配合围绕在四条边上的高带宽结构(可提供4TB/s的片外带宽),便在逻辑上构成了一个D1芯片——一个由特斯拉研发的人工智能训练芯片。

现在已经有了搭房子的砖瓦,接下来便要考虑如何建房子了。基于D1芯片,特斯拉在系统层面设计了「训练模块(Training Tile)」,训练模块就是Dojo超算的基本构成单位。

一个完整的训练模块上集成了25个D1芯片,并进一步封装了总带宽为36TB/s的连接器、具备15kW散热能力的水冷系统以及供电模块。性能表现上,一个训练模块BF16/CFP8精度下的浮点算力总算力为9PFLOPS。

然后120个训练模块共同构成ExaPOD,即特斯拉Dojo超算的最终硬件形态,其总算力在BF16精度下达1.1EPlops。

拆解完Dojo的基本架构,现在请回忆一下特斯拉在打造Dojo超算时希望解决的核心问题,其核心目标是希望在各个层级上帮助拓展带宽并减少延迟。

当D1芯片本身已经拥有了极高的带宽(10TB/s的片上带宽、4TB/s的片外带宽),那么紧接着的一个问题就是如何实现芯片之间的“无缝连接”,保留芯片之间的最大带宽,在系统层面解决带宽与延迟问题?因为通常来说,芯片间的连接方式和物理距离对带宽和延迟有着决定性的影响。

特斯拉在这一步上用到了台积电的先进封装技术InFO_SoW技术,这也是我们下一节的内容。

什么是InFO技术?

美国时间8月22日,在一年一度的集成电路产业盛会Hotchips上,台积电Pathfinding for System Integration副总经理余振华就台积电的先进封装技术路线图进行了分享。

其中,面向超高性能计算系统,余振华给出了InFO_SoIS和InFO_SoW两种技术,并在演示图中“附赠”了一个有关特斯拉AI Day的博客链接。

特斯拉在集成25个D1芯片时用了台积电的InFO_SoW,有了官方实锤。

一枚芯片的诞生,包括芯片设计和生产制造两个环节。制造过程中,沙子进行提炼处理得到芯片的原材料硅,然后再通过纯化、拉晶、切割等工艺得到硅晶圆(即晶圆,wafer),只是完成了第一步。

从硅晶圆到做出一个能满足功能需求的电路架构(芯片),还有成百上千道工序。其中,芯片本身是娇贵的器件所以需要给它“保护壳”,而单颗芯片上的电极(被称为pad或者是bump)又需要与外界电路连通后才能工作,简单来说芯片厂商做的这部分工作就被称为「封装」。

台积电的InFO_SoW技术是一个整合了InFO技术、动力和散热模块的晶圆级系统,也是一种封装技术。曾经台积电打败三星拿下苹果代工订单,凭借的就是更为成熟的InFO技术。

InFO(Intergrated Fan-Out),整合扇出型封装技术。

下面简化版的示意图展示了用InFO技术封装后器件的基本架构,从上到下是用于固化的环氧树脂、晶片(Die)即单个的芯片、导线重布层(RDL)、外部金属球、印刷电路板(PCB)。所谓的扇出区就是图中黄色的部分,代表金属球超出了晶片的大小,简单去理解就是说把单个芯片上电极和外部的连接点,放到了芯片的外面。

就制作过程而言,其大致流程是先准备一个载体(通常是玻璃),并在上方涂抹形成一个暂时贴合层。然后把导线重布层(RDL)做到暂时贴合层上方,接着将切割好的晶片放置于导线重布层上方。

放置芯片的时候,单个芯片中间会留有间隔(形成扇出区)。然后用环氧树脂盖住,再加上外部金属球,形成一个封装好的半导体。最后,再整个粘到印刷电路板上面。

相比于传统的打线封装,InFO技术的基本优势是可以实现多个芯片集成封装,加速信号传递,同时借助于结构优势可以实现较低的PDN(power delivery network,电源分配网络)阻抗,进一步提升能效。

台积电面向高性能计算目前基于InFO提出了两种方案,其中InFO_SoW,属于业内首个全晶圆异质集成技术,在带宽密度和PDN阻抗上都有不错的表现。

另外,在散热处理上,InFO_SoW提供了可扩展的POC热处理方案。如上图所示,InFO晶圆上连连接器和分布式功率模块,下面连接散热模块,而底下整体的冷盘(SoW)把散热效率提高了。对于超算来说,除了带宽和延迟,散热也是个不容忽视的问题。

写在最后

超算作为一种生产力工具,可能成为汽车行业尤其是自动驾驶发展中的新一个竞争焦点。而在变革过程中,这种变化也在推动着其他先进技术快速应用。特斯拉打造Dojo超算,不仅是特斯拉的“胜利”,也是台积电的“胜利”。

参考资料:

1、台积电最新先进封装路线图揭晓!2035年前实现1μm内SoIC互连

https://mp.weixin.qq.com/s/eToF_MOOgrowVZsq_xY0xQ

2、曲博: 台积电与苹果合作的关键 – FinFET, InFo 先进封装技术!

https://www.bilibili.com/video/BV1Ei4y14727/?spm_id_from=333.788.recommend_more_video.1

3、特斯拉Dojo芯片深度揭秘

https://mp.weixin.qq.com/s/AklOuYv58W8PjDFuTZVA9A

4、https://ieeexplore.ieee.org/document/9159219

 

Comments are closed.