【新智元导读】谷歌的AlphaChip,几小时内就能设计出芯片布局,直接碾压人类专家!这种超人芯片布局,已经应用在TPU、CPU在内的全球硬件中。人类设计芯片的方式,已被AI彻底改变。
无论是设计最先进的用于构建AI模型的TPU,还是数据中心的CPU,它在相关的众多领域,都产生了广泛影响。
在谷歌的许多款芯片设计中,它都取得了出色的效果,比如Axion芯片(一种基于Arm 的通用数据中心CPU)。
也就是说,芯片布局设计对它来说是一种游戏,就像AlphaGo一样,它在游戏中,学习如何设计出最好的芯片布局。
现在,它已经用于设计多代TPU芯片(TPU v5e、TPU v5p和Trillium)。而且跟人类专家相比,AlphaChip放置的块数越来越多,线长也减少了许多。
早在2020年,团队就发表了一篇预印本论文,介绍了谷歌的全新强化学习方法,用于设计芯片布局。
今天,团队发表了Nature附录,详细描述了具体方法,及其对芯片设计领域的影响。
同时,他们还发布了一个预训练的检查点,分享了模型权重,公布模型名称为AlphaChip。
谷歌表示,AlphaChip是最早用于解决现实世界工问题的强化学习方法之一。
在数小时内,它就可以生成超人或类似的芯片布局,而不需要花费数周或数月的人类。它设计的芯片布局,已经被用于世界各地的芯片中,包括数据中心和移动电话。
为了设计TPU布局,AlphaChip首先在来自前几代的各种芯片模块上进行实践,例如片上和片间网络模块、内存控制器和数据传输缓冲区。这一过程被称为预训练。
然后,团队在当前的TPU模块上运行AlphaChip,以生成高质量的布局。
与之前的方法不同,AlphaChip在解决更多芯片布局任务时变得更好、更快,类似于人类专家的工作方式。
对于每一代新的TPU,包括谷歌最新的Trillium(第6代),AlphaChip都设计了更好的芯片布局,并提供了更多的总体布局图,从而加快了设计周期,产生了更高性能的芯片。
条形图显示,跟TPU物理设计团队生成的布局相比,AlphaChip在TPU三代产品中的平均有线长度减少
一般来说,计算机芯片有许多相互连接的模块、多层电路元件组成,所有这些部件都由纤细无比的导线连接起来。
由于设计的复杂性,60多年来,芯片设计工程师一直在努力自动化芯片布局规划过程。
众所周知,通过深度学习和博弈论,AlphaGo和AlphaZero逐渐从0掌握了围棋、国际象棋和将棋的潜在规则。
从空白栅格开始,AlphaChip每次放置一个电路元件,直至放置完所有元件。
一种全新的「基于边」的图神经网络让AlphaChip,能够学习相互连接的芯片元件之间的关系,并在芯片之间进行泛化,让AlphaChip在设计的每种布局中都有所改进。
左图:动画显示AlphaChip在没有任何经验的情况下,将开源的Ariane RISC-V CPU置入。右图:动画显示AlphaChip在对20个TPU相关设计进行练习后,放置相同的块。
值得一提的是,这项研究依旧是由Jeff Dean带队,所有核心要素全都浓缩在了这两页论文中。
正如Nature论文(2021年),以及ISPD 2022后续研究中所讨论的那样,这种预训练过程显著提升了AI的速度、可靠性、布局的性能。
顺便提一句,预训练也能培养出LLM,像Gemini、ChatGPT令人印象深刻的能力。
开发者们可以使用这个库,对各种芯片进行预训练,然后将预训练的模型应用到新的块。
基于最新的AlphaChip训练过程,研究人员在库中添加了预训练的20个TPU块模型检查点(checkpoint)。
显然,如果不进行任何预训练,AlphaChip就无法从先前的经验中学习,从而规避了学习方面的问题。
最终会趋于平稳,这代表着模型对其正在执行的任务有了尽可能多的了解,对外表现就是「收敛」。
从训练到收敛,是机器学习的标准做法。如果不按照这个路径来,可能会损害模型的性能。
AlphaChip的性能随应用的计算资源而扩展,在ISPD 2022论文中,谷歌团队曾进一步探讨了这一特性。
正如Nature论文中所描述的,在对特定块进行微调时,使用了16个工作单元,每个单元由1个GPU和32个RL环境组成,通过多进程处理共享10个CPU。
总言之,用较少的计算资源可能会损害性能,或者需要运行相当长的时间,才能实现相同(或更差)性能。
在运行Nature论文中评估方法之前,团队使用了来自物理综合的近似初始布局,以解决hMETIS标准单元集群大小不平衡的问题。
尽管如此,谷歌作者还是进行了一项消融研究,排除了任何初始布局的使用,并且也没有观察到AlphaChip性能下降。
具体来说,他们跳过了单元集群重新平衡的一步,而是将hMETIS集群不平衡参数降低到最低设置(UBfactor = 1)。
在Nature论文中,研究人员采用了10nm以下制程的TPU块进行实验得出的结果。
这个技术节点的大小,正是现代芯片的典型尺寸。之前许多论文报告中,采用较早的45nm、12nm。
比如,在10nm以下的芯片中,通常使用多重图案设计,这会在较低密度下导致布线拥堵的问题。
因此,对于较早的技术节点尺寸,AlphaChip可能需要调整其奖励函数,以便更好地适应技术。
自从2020年发布以来,AlphaChip已经生成了每一代谷歌TPU使用的超人芯片布局。
可以说,正是因为它,才能使大规模放大基于Transformer架构的AI模型成为可能。
无论是在Gemini这样的LLM,还是Imagen和Veo这样的图像和视频生成器中,TPU都位于谷歌强大的生成式AI系统的核心。
另外,这些AI加速器也处于谷歌AI服务的核心,外部用户可以通过谷歌云获得服务。
随着每一代TPU的发展,AlphaChip和人类专家之间的性能差距不断扩大。
AlphaChip还为数据中心CPU(Axion)和谷歌尚未公布的其他芯片,生成了超越人类的布局设计。
比如联发科就不仅用AlphaChip加速了最先进芯片的开发,还在功耗、性能和面积上对芯片做了优化。
通过超人算法以及硬件、软件和机器学习模型的端到端协同优化,芯片设计的周期会显著加快,还会解锁性能的新领域。