谷歌新研究:AI可以在6小时内设计出盘算机芯片

  • 时间:
  • 浏览:18
  • 来源:安图在线

文丨学术头条

现代盘算的革命在很大水平上是由盘算机系统和硬件的显著进步促成的。随着摩尔定律的放缓和Dennard标度的扩大,世界正朝着专用硬件生长,以满足指数级增长的盘算需求。

然而,今天的芯片需要几年的时间来设计,因此大大缩短芯片设计周期,使硬件适应快速生长的机械学习领域是当前的一个生长趋势。

如果使用机械学习算法取代人为设计事情来实验设计芯片,同时其自己能够提供缩短芯片设计周期的方法,从而在硬件和机械学习之间建立一个越发集成的关系来促进相互的生长,那又会怎么样呢?

克日,由谷歌AI的首席科学家Jeff Dean向导的团队配合撰写了一份预印论文,该论文形貌了一种基于学习的芯片设计方法。

他们将芯片放置视为强化学习(RL)问题,用RL计谋来优化芯片放置的质量。与以前方法差别的是,该方法可以从已往的履历中学习,并随着时间的推移不停革新。特别是,当训练更多的芯片块时,该方法更擅长为先前未见过的芯片块快速生成优化的结构。

他们声称,该方法完成芯片设计的平均时间不到6个小时,这比人类专家花数周时间完成设计要快得多。

芯片结构计划困局

在传统的 “结构布线” 任务中,芯片设计人员使用软件来确定芯片电路在芯片中的结构,类似于设计修建物的平面图。

盘算机芯片被分成许多块,每一块都是一个单独的模块,如内存子系统、盘算单元或控制逻辑系统。这些模块可以用网表、电路组件和尺度单元 (如 NAND、NOR 和 XOR 等逻辑门) 的图形来形貌,所有这些组件都是通过导线毗连。

确定一块芯片的结构是一个称为芯片结构计划的历程,它是芯片设计历程中最庞大、最耗时的阶段之一,涉及到将网表放置在一个芯片画布 (2d 网格) 上,从而提升功率、性能以及区域 (PPA) 最小化,同时遵守对密度和路由拥塞的限制。为了找到满足多个目的的最佳结构,需要思量许多变量。

只管这方面的研究已经举行了几十年,可是人类专家仍然需要花上几周的时间来迭代,以生成满足多方面设计尺度的解决方案。这个问题的庞大性源自网表图的巨细,这些图的巨细规模从数百万到数十亿个节点组成数千个集群,通常,评估目的指标需要花费数小时到一天的时间。

“基本上,在设计历程中,你可以使用一些设计工具来举行一些结构,但仍需要人工结构和布线专家同这些设计工具一起举行许多次重复的迭代,”Dean说道,“从你想要的设计到实际将其物理结构到芯片上,并在面积、功率和导线长度上有适当的限制,而且也要满足所有的设计角色或任何正在举行的制造历程,这是一个数周的历程。而通过建设一个机械学习模型,可以让它学会玩特定芯片的组件放置游戏。”

深度强化学习模型

研究人员设计了一个深度强化模型,该模型可以实验种种步骤来检察哪些步骤可以带来更好的效果,这些步骤不是在游戏板上放置零件,而是研究如何在整个芯片中设计放置正确的电路结构。

该模型可以指导经由强化学习训练的RL计谋来优化芯片放置。其输入是芯片网表 (节点类型和图毗邻信息)、要放置的当前节点的ID,以及一些网表元数据,如毗连总数、宏和尺度单元集群。网表图和当前节点通过一个基于边缘的图神经网络通报,该神经网络是为编码输入状态而开发的,嵌入生成部门放置的图和候选节点。

图神经网络生成的嵌入与元数据嵌入串联在一起,形成对计谋和价值网络的输入

然后将边缘、宏和网表元数据嵌入毗连起来,以形成单个状态嵌入,并将其通报给前馈神经网络。前馈网络的输出是一种学习表现,它捕捉有用的特征并作为计谋和价值网络的输入。计谋网络在所有可能的网格单元上生成一个概率漫衍,当前节点可以放置在这些网格单元上。

在每次训练的迭代中,宏均凭据RL计谋依次放置,然后通过力导向方法放置尺度单元簇,该方法将电路建模为一个弹簧系统,以最大水平淘汰导线长度。RL训练的指导原则是使用近似线长(即半周线长,HPWL)的加权平均值和近似拥塞(路由资源消耗的比例),为每个实行RL计谋的芯片位置盘算一个快速但近似的奖励信号放置的网表。

在每次训练迭代期间,一次将一个宏放置一次计谋,并通过强制定向方法放置尺度单元簇。奖励是凭据近似导线长度和拥塞的加权组合盘算得出的。

在实践中,RL计谋从空的芯片开始,按顺序依次放置组件,直到它完成网格为止,而且直到最子女理波长 (与功率和性能相关) 的负加权总和和拥塞为零,才获得奖励。为了指导署理选择先放置哪些组件,组件按巨细降序排序,首先放置较大的组件,降低了以后没有合适位置的可能性。

训练 RL 计谋需要建立一个包罗10,000 个芯片放置的数据集,其中输入是与给定放置相关的状态,标签是放置的奖励 (即线长和拥塞)。研究人员首先选择了5个差别的芯片网表,然后应用AI算法为每个网表建立2000个差别的位置。

训练数据巨细与微调性能

只管这项事情并不完全是新颖的,它是基于谷歌工程师在3月份揭晓的一篇论文中提出的一项技术,但该事情推进了这项技术的生长,因为它意味着芯片上晶体管的放置可以在很大水平上实现自动化。一旦公然公布,谷歌研究人员的技术可以让资金紧张的初创公司开发出自己的芯片,用于人工智能和其他特殊用途。此外,它可以资助缩短芯片设计周期,使硬件更好地适应快速生长的科学研究。

研究人员表现,当他们在更多的芯片上训练框架时,能够加速训练历程,并更快地发生高质量的效果。实际上,他们声称与领先的基准相比,它在生产中的谷歌张量处置惩罚单元 (TPUs)(一款谷歌定制设计的人工智能加速芯片)上实现了优于领先基线的PPA。

研究人员总结道:“与现有的重新开始优化每个新芯片的位置方法差别,我们的事情使用从放置以前的芯片中获得的知识,来使其随着时间的推移变得更好。此外,我们的方法可以直接优化目的指标、线长、密度和拥塞,而不必像其他方法那样界说这些功效的近似值。我们的方法不仅使新的成本函数在可用时易于整合,而且还使我们能够凭据给定芯片块的需求,例如,时序关键或功耗受限,来权衡它们的相对重要性。”

而在Reddit上,这则消息也引发了网友热议。有网友说,当他看到这则消息,他以为很是酷。因为放置数以亿计的晶体管,使其可以毗连并正常事情是一项困难的任务,其中结构和布线很是重要的,信号沿导线移动需要花费时间,而结构目的是使导线长度最小,淘汰组件之间的等候时间,这很难做到。可是仍然会存在一些问题,例如接线不合适,这就需要人工来解决。而淘汰设计芯片所需的时间,就可以设计更多的芯片来加速迭代速度。

也有网友表现,它可以资助设计人员轻松设计用于神经网络、机械学习、深度学习的芯片,加速AI的生长。

软件与硬件的生长相辅相成,深度学习三巨头Bengio、Hinton、LeCun就曾在AAAI 2020大会上配合探讨未来深度学习神经网络的前景,他们均表现用于加速神经网络训练和推理的新型硬件可以生成更大的模型,也许有一天有可能使数万亿突触神经网络成为可能,而谷歌的快速设计盘算机芯片更是助力了其生长。

参考泉源:

https://venturebeat.com/2020/04/23/google-claims-its-ai-can-design-computer-chips-in-under-6-hours/

https://ai.googleblog.com/2020/04/chip-design-with-deep-reinforcement.html

https://www.zdnet.com/google-amp/article/google-experiments-with-ai-to-design-its-in-house-computer-chips/

https://www.reddit.com/r/artificial/comments/g7ov49/googles_ai_can_design_computer_chips_in_under_6/

https://www.zdnet.com/article/ai-on-steroids-much-bigger-neural-nets-to-come-with-new-hardware-say-bengio-hinton-lecun/#ftag=CAD-00-10aag7e

更多精彩内容,关注钛媒体微信号(ID:taimeiti),或者下载钛媒体App