近日,面对 EDA 界对于自家 AlphaChip 的质疑,谷歌首席科学家 Jeff Dean 以论文回应论文,并表示:大家注意,这是同行竞争!
登上了 Nature 的「超人」芯片设计系统 AlphaChip,却多次遭到质疑。而且不是简单说说而已,做实验、写论文,还有一篇作为 invited paper 发在 ISPD 2023。
AlphaFold 都拿诺奖了,AlphaChip 还搁这辟谣呢?怎么办?谷歌首席科学家 Jeff Dean 表示:我也写篇论文!
EDA 社区一直对我们的 AlphaChip 方法是否像 Nature 论文中声称的那样有效持怀疑态度。annadgoldie、Azaliamirh 和我写了个论文,来回应这些问题:
Jeff Dean 认为,这种毫无根据的怀疑,在很大程度上是由下面这篇文章(「一篇存在严重缺陷的未经同行评审的论文」)导致的:
该论文声称复制了我们的方法,但未能在主要方面遵循:
作者没有进行预训练(尽管在我们的 Nature 文章中提到了 37 次预训练),剥夺了基于学习的方法从其他芯片设计中学习的能力;
减少了 20 倍的计算量,并且没有进行收敛训练。
这就像评估一个以前从未见过围棋的 AlphaGo,然后得出结论,AlphaGo 不太擅长围棋。
Jeff Dean 等人还回应了 Igor Markov(Synopsys 的杰出架构师)在 CACM 2024 年 11 月刊上发表的分析文章。
Jeff Dean 表示,Markov 发论文时妹说自己是 Synopsys 的高级员工,——Synopsys 是商业 EDA 软件,而 AlphaChip 是开源的。
Markov 的论文分析中还引用了另一篇没发表的匿名 PDF:
这实际上也是 Markov 写的。
Markov 的文章提出了隐晦的指控,所有这些都是完全没有根据的,而且已经被 Nature 证明过了。
我很惊讶 Synopsys 想与此扯上关系,我很惊讶 CACMmag 认为有必要在没有证据的情况下发表这类指控。
除了两篇有缺陷的、未经同行评审的文章之外,没有任何技术数据。
谷歌的回击
话说在 arxiv 上吃瓜,小编还是第一次。
在 Introduction 部分,谷歌拉了个时间表:
2020 年 4 月:发布 Nature 论文的 arXiv 预印本。
2020 年 8 月:TPU v5e 中流片了 10 个 AlphaChip 布局。
2021 年 6 月:发表了 Nature 文章。
2021 年 9 月:在 TPU v5p 中流片了 15 个 AlphaChip 布局。
2022 年 1 月 - 2022 年 7 月:开源了 AlphaChip,Google 的另一个团队独立复制了 Nature 论文中的结果。
2022 年 2 月:谷歌内部独立委员会拒绝发表 Markov 等人的观点,因为数据不支持其主张和结论。
2022 年 10 月:在 Trillium(最新的公共 TPU)中流片了 25 个 AlphaChip 布局。
2023 年 2 月:Cheng 等人在 arXiv 上发帖,声称对我们的方法进行了「大规模重新实现」。
2023 年 6 月:Markov 发布了他的「Meta-analysis」。
2023 年 9 月:Nature 启动了第二次同行评审。
2024 年 3 月:Google Axion 处理器(基于 ARM 的 CPU)采用了 7 个 AlphaChip 布局。
2024 年 4 月:Nature 完成了调查和出版后审查,发现完全对我们有利。
2024 年 9 月:MediaTek 高级副总裁宣布扩展 AlphaChip 以加速其最先进芯片的开发。
2024 年 11 月:Markov 重新发表了他的「meta-analysis」。
简单来说,我 AlphaChip 已经在自家服役这么长时间了,联发科也用了,Nature 也调查过了,无懈可击。
而且作为不同的部门,TPU 团队需要足够的信任才会使用 AlphaChip(优于人类专家、高效且可靠),他们不能承担不必要的风险。
对于反方的 Markov,论文评价道:「Markov 的大部分批评都是这种形式:在他看来,我们的方法不应该奏效,因此它一定不起作用,任何表明相反的证据都是欺诈。」
说到欺诈这件事,正反方都谈到了内部举报人(whistle-blower),在 Markov 的文章中是这样记载的:
论文的两位主要作者抱怨他们的研究中不断出现欺诈指控。2022 年,谷歌解雇了内部举报人,并拒绝批准出版谷歌研究人员撰写的一篇批评 Mirhoseini 等人的论文,举报人起诉谷歌不当解雇(根据加州举报人保护法)。
而本文表示:这位举报人向谷歌调查员承认,他怀疑这项研究是欺诈性的,但没有证据。
对错误论文的逐条回应
没有预先训练 RL 方法
与以前的方法不同,AlphaChip 是一种基于学习的方法,这意味着它会随着解决更多的芯片放置问题而变得更好、更快。
这是通过预训练实现的,如下图 2 所示,训练数据集越大,放置新区块的方法就越好。
相反,Cheng 等人根本没有进行预训练(没有训练数据),这意味着模型以前从未见过芯片,必须学习如何从头开始为每个测试用例执行布局。
作者在 Nature 论文中详细讨论了预训练的重要性,并实证证明了它的影响。例如下图 3 表明,预训练可以提高放置质量和收敛速度。
在开源的 Ariane RISC-V CPU 上,非预训练的 RL 需要 48 小时,才能接近预先训练模型在 6 小时内可以产生的值。
在 Nature 论文中,作者针对主数据表中的结果进行了 48 小时的预训练,而 Cheng 等人预训练了 0 小时。
「Cheng 试图通过暗示我们的开源存储库不支持预训练,来为他们缺乏预训练找借口,但这是不正确的,预训练就是在多个样本上运行方法。」
使用的计算资源减少了一个数量级
在 Cheng 等人的论文中,RL 方法提供的 RL 体验收集器减少了 20 倍(26 个对比 512 个),GPU 数量减少了一半(8 个对比 16 个)。
使用较少的计算可能会损害性能,或者需要运行相当长的时间才能实现相同的性能。
如下图 4 所示,在大量 GPU 上进行训练可以加快收敛速度并产生更好的最终质量。
RL 方法未训练到收敛
随着机器学习模型的训练,损失通常会减少,然后趋于平稳,这代表「收敛」—— 模型已经了解了它正在执行的任务。
众所周知,训练到收敛是机器学习的标准做法。但如下图所示,Cheng 等人没有为任何一个进行收敛训练。
下表总结了详细信息。除了没有提供图的 BlackParrotNG45 和 Ariane-NG45,其他四个具有收敛图的块(Ariane-GF12、MemPool-NG45、BlackParrot-GF12 和 MemPool-GF12),训练在相对较低的步数(分别为 350k、250k、160k 和 250k 步)处截止。
如果遵循标准的机器学习实践,可能会提高这些测试用例的性能。
不具代表性、不可重现
在 Nature 论文中,作者报告的张量处理单元(TPU)块的结果来自低于 7nm 的技术节点,这是现代芯片的标准制程。
相比之下,Cheng 等人采用了旧技术节点尺寸 45nm 和 12nm)的结果,这从物理设计的角度来看有很大不同。
例如,在低于 10nm 时,通常使用 multiple patterning,导致在较低密度下出现布线拥塞问题。因此,对于较旧的技术节点大小,AlphaChip 可能会受益于调整其奖励函数的拥塞或密度分量。
AlphaChip 的所有工作都是在 7nm、5nm 和更新的工艺上进行的,作者没有专注于将其应用于旧工艺制程的设计。
此外,Cheng 等人也无法或不愿意分享在其主数据表中复制结果所需的综合网表。
参考资料:
-
https://x.com/JeffDean/status/1858540085794451906
广告声明:文内含有的对外跳转链接(包括不限于超链接、二维码、口令等形式),用于传递更多信息,节省甄选时间,结果仅供参考,所有文章均包含本声明。