关于ZAKER Skills 合作
DeepTech深科技 1小时前

9 个月,不足百人参与,OpenAI 如何用自己的 AI 造出首款芯片

8 月 25 日,OpenAI 公布了首款自研推理芯片 Jalape o 的性能测试结果。这块芯片被设计用来运行 AI 大语言模型,而在研发过程中,OpenAI 也用上了自己的模型。从初始设计到交付制造,项目用了 9 个月。

AI 参与芯片设计,最直接的变化,是一部分反复修改、测试和优化的工作可以交给模型完成。工程师可以让 AI 编写代码、尝试不同实现,再根据工具返回的结果继续调整。但 Jalape o 更值得关注的地方,不只是 "AI 能不能帮人造芯片 "。当 AI 开始越来越多地承担编程和性能优化工作,另一个问题也随之出现:如果未来写代码的不只是工程师,还有 AI,那么芯片是不是也应该变得更容易被 AI 理解和编程?

而就在 Jalape o 的研发过程中,其实已经出现了这种变化。在设计阶段,团队使用了一套叫 XLS 的工具。它最初由谷歌开发,允许工程师先用较高层次的代码描述计算功能,再逐步把这些描述转换为硬件代码。工程师不需要一开始就直接面对底层电路,而是可以先写清楚数据要经过哪些运算,再由工具生成对应的硬件实现。这对 AI 尤其重要。

今天的 AI 其实已经很擅长写软件,但芯片设计仍然是一项高度专业化的工作。参与 Jalape o 研发的克里斯 · 利里(Chris Leary)此前在谷歌工作时正是 XLS 项目的发起者。他向 IEEE Spectrum 解释,团队很早就考虑过如何用 AI 加快研发,而当时的模型更擅长处理接近软件的任务。XLS 相当于把一部分芯片设计工作转化成了 AI 更熟悉的问题。

同一个芯片功能往往也有很多种实现方式。比如,一项运算可以使用更多电路,让更多计算同时进行,也可以让较少的电路反复工作。前者可能更快,但会占用更多面积和功耗;后者更省空间,却可能增加等待时间。工程师需要不断在速度、功耗和面积之间做取舍,而不同的设计往往要经过多轮尝试才能确定。

过去,比较这些方案意味着反复写代码、跑测试、修改实现。一些本来值得尝试的思路,可能只是因为工程时间不够就被放弃了。AI 能够加快其中的代码工作,让团队在相同时间里尝试更多方案。不过,模型生成的代码并不意味着设计一定可用,它仍然需要经过检查。XLS 提供的仿真和一致性检查工具,可以验证不同表示之间的功能是否相符。

所以,Jalape o 里 AI 真正发挥作用的地方,并不是单独生成一段代码,而是进入了一套完整的工程反馈循环:工程师先给出需求和约束,模型提出修改,工具返回结果,再根据这些结果继续调整。模型能力和工具环境结合起来之后,AI 才有机会持续参与芯片设计。

不过,这些工作仍然只是造芯流程的一部分。从逻辑设计走到真正能够制造的芯片,中间还有大量物理实现工作。根据 IEEE Spectrum 报道,项目期间 OpenAI 内部团队平均不足 100 人,但这不包括合作伙伴博通的参与人员。

博通承担了大量物理设计和生产落地工作,包括电路如何摆放、连线怎样安排、信号能否及时到达等。也就是说,AI 目前主要加快的是逻辑设计、代码生成和部分优化,而芯片最终能够真正制造出来,依然依赖成熟的半导体工程体系。

但芯片完成之后,AI 又参与了另一项更接近长期价值的工作。今年 5 月拿到首批硅片后,OpenAI 开始用内部模型优化运行在 Jalape o 上的程序。在一项注意力计算任务中,性能从理论上限的 0.31% 提高到了 88.94%,整个优化过程大约用了 40 小时。

这个结果对应了专用 AI 芯片长期以来一个很现实的问题:芯片制造完成之后,硬件基本就固定了,但运行在上面的模型不会停止变化。新模型可能采用不同的计算方式,也可能对内存访问、通信和并行计算提出新的要求。即使硬件本身依然适用,原来的软件优化也未必能够直接沿用。因此,一家公司即使做出了一块性能不错的自研芯片,也需要持续投入工程师,为新的模型编写和调整程序。

专用芯片的成本不只来自设计和流片,后续的软件适配同样需要大量时间和人力。如果每增加一种模型,都需要重新做一轮底层优化,那么硬件带来的性能和能效优势,也可能被漫长的软件开发周期部分抵消。

OpenAI 披露,团队借助 AI 编程工具,在两个月内将三个原本不在 Jalape o 最初生产计划中的开放权重模型优化到了较高性能。相比某一次跑分,这件事更能说明 AI 参与芯片编程的价值:如果 AI 能够稳定承担更多 kernel 编写、性能调优和模型适配工作,那么变化的不只是研发效率,还包括一块专用芯片长期维护的成本。

这也是 "AI 程序员 " 开始和芯片设计产生关联的地方。Jalape o 在设计时,就考虑了如何让这块芯片对人类和 AI 来说都更容易编程。OpenAI 表示,它希望任务分配、数据通信和不同计算之间的同步方式都尽量保持清晰、可预测,让模型能够理解芯片是如何工作的,再据此调整程序。

这和研发初期选择 XLS 其实是同一种思路。设计阶段,团队把一部分硬件开发转化成 AI 更熟悉的软件问题;芯片完成之后,又让硬件的编程方式尽可能清楚,方便 AI 持续进行性能优化。前者是在调整 AI 参与造芯的工具,后者则开始触及另一个问题:当 AI 本身也成为程序员,芯片是不是也需要考虑它的使用方式?

过去,工程师评价一块芯片是否 " 好用 ",除了性能、功耗、面积和带宽,也会考虑它是否容易编程。因为硬件参数再漂亮,如果软件开发和维护成本太高,实际收益也会打折。现在,这个 " 是否容易编程 " 的对象,可能不再只有人类工程师。

虽然,这并不意味着未来所有芯片都要专门为 AI 重新设计,但它或许会改变团队对一些设计方案的判断。一项硬件能力即使理论性能更高,如果每次适配新模型都需要很长的软件开发周期,优势就很难快速兑现。相反,一块架构清晰、行为可预测,并且能被 AI 持续优化的芯片,可能更容易跟上模型快速迭代的速度。

但,就目前来说,Jalape o 还需要经过规模部署的检验。按照 OpenAI 在 8 月公布的计划,公司准备在年底前开始部署,同时继续完善软件和运行环境。后续真正需要证明的,是这套方法能不能在不同模型、不同任务和长期运行中反复奏效。不过,Jalape o 至少提出了一个很有意思的问题:过去,人们造 AI 芯片,是为了让芯片更好地运行 AI;现在,当 AI 开始越来越多地参与写代码和做性能优化之后,芯片本身也可能开始考虑,怎样让 AI 更容易为它写程序。

参考链接:

https://spectrum.ieee.org/llms-for-chip-design

https://openai.com/index/jalapeno-first-results/

https://google.github.io/xls/

运营 / 排版:何晨龙

注:封面 / 首图由 AI 辅助生成

相关阅读

最新评论

没有更多评论了
DeepTech深科技

DeepTech深科技

发现改变世界的新兴科技

订阅

觉得文章不错,微信扫描分享好友

扫码分享

企业资讯

查看更多内容