弃X86和ARM指令集不用,AI芯片也要走CPU的老路?

国产始终是一个绕不开的话题。在最近一次会议上,出于对西方国家人工智能垄断的担忧,寒武纪科技创始人陈云霁表示,“X86指令集和ARM指令集主导了信息时代的发展。人工智能时代,不能再走老路,应形成以中国为主导的指令集标准。”这段让人向往的话,多少也暴露了几分危机。那么当前人工智能芯片使用指令集的现状又如何呢?

CPU时代的呼吁:跑赢Intel/AMD

其实早在CPU时代,我们就一直存在一个梦想:用真正的国产处理器取代Intel/AMD的处理器。但是随后诞生出来的一批批国产处理器却遭到各种吐槽。一部分是因为网络暴力,另一部分则归咎于拥有“自主产权”的处理器,采用的往往是国外大厂的处理器指令集。

但这与当时的形势有关,因为整体生态的缺乏,国内厂商不得不借鉴国际上已经存在的处理器指令集。CPU架构往往由要实现的指令集的功能决定。举个简单的例子,我们可以将CPU硬件架构视为人类的大脑(头骨和脑),通过它可以实现指令集规定的操作运算。

那么为何国内厂商呼吁的是跑赢胜过Intel/AMD呢?简单来说,我们假设一个场景,假如要让一个机器人吃饭,我们可以这样命令:一种是“拿勺子、舀饭、张嘴、咀嚼、吞咽”;一种是“吃饭”。后者建立在事先训练,硬件已经可以实现复杂功能的基础上。

如果把“吃饭”的指令变为“吃菜”,两者对比会更为明显。前者只需将“舀饭”变为“夹菜”,后者却需要提前在硬件中进行“吃菜”的相关训练。这两种不同的逻辑,也就是复杂指令集(CISC)和精简指令集(RISC)的区别,在硬件上又以英特尔X86架构处理器和ARM架构处理器为代表。

国内厂商曾尝试使用过诸如X86、ARM、MIPS,以及更为小众的SPARC、Alpha、安腾架构,但最终,除了军方背景的申威、飞腾之外,基于MIPS、SPARC等架构的处理器都一波三折。英特尔X86架构因其高性能,ARM架构因其低功耗分别逐步把控了PC、移动端的市场。国产芯片厂商面临的问题也基本一致,正如多年前龙芯处理器架构师所说的那样,“我们CPU也是可以做世界第一的,而且有,关键就是没法用,用户不用你。”

AI时代的呼吁:再造指令集国家标准

为什么在讨论AI时代呼吁打造“指令集国家标准”时会提到CPU时代的事情?大概是因为两者都有相似之处:一、都有国产的意图;二、都事关ARM/X86指令集。但另一个不得不提的巧合是陈云霁的身份:AI芯片制造商寒武纪创始人,兼中科院计算所智能处理器中心主任。

国产CPU中最为知名的莫过于龙芯(尽管日后爆出负面),而龙芯正是在中科院计算所研发并于2002年8月诞生。陈云霁也是在2002年进入中科院计算所,跟随龙芯之父胡伟武博士就读,并且是当时团队内最年轻的成员。陈云霁无疑对这场国产CPU赶超英特尔/AMD的风潮记忆犹新。或许也因此,他才会感慨“不能再走老路”。

当前人工智能芯片的发展,中国和国际多少处于同一起跑线上,这与CPU时代从0开始还是有些不同。但是,除了面对此前统治行业的X86指令集、ARM指令集外,国产人工智能芯片还需要面对另一问题:国际上新的指令集RISC-V的出现。

这一开源指令集被视为对抗ARM的利器。更为关键之处在于,该芯片预计将被用于物联网设备、自动驾驶车等产品上。也就是说人工智能芯片的多半领域都是其指向的目标。怎么来描述RISC-V指令集下的芯片呢?此前搭载英特尔/AMD和ARM架构处理器的设备受到芯片级漏洞Spectre 和 Meltdown的波及,在全新RISC-V架构中并不存在。同时,该架构具备非常高的灵活性和可扩展性。在运行AI模型时,能通过特殊定制和优化,达到比较理想的能源利用和运算效率。

Roa Logic 公司基于 RISC-V 架构设计的处理器 RV12

这还不是全部,最大的优势显然在于其开放且完全免费,省去了指令集授权的成本。仅仅是这一点,就足以让不少公司投入研发资源。半导体行业联发科、高通、英伟达等已经纷纷入局,而华为、谷歌、西部数据、特斯拉等科技企业也开始纷纷涌入。陈云霁“尽快制定智能芯片的国家标准,尤其是指令集的国家标准”的建议是针对当前大的环境有所感而发。但是现状似乎并不容乐观。

写在最后

当前人工智能芯片领域试图形成以中国为主导的指令集标准。除了需要面对来自传统x86架构和ARM架构的挑战外,还需要面对一个正在成长起来的新的敌人RISC-V指令集的挑战。当然,作为新兴的指令集架构,RISC-V 的整个生态基础还比较薄弱。但这个问题,并不单单是RISC-V需要面对的问题,也可能是所有致力于国产智能芯片的厂商均需要面对的问题。