近年来,国产AI芯片公司获得了高速发展,在芯片性能、生态等方面获得了巨大的进步。但同时,我们也要很深刻或者很清醒的认识到,国产AI芯片不仅在硬件算力端,而且在软件生态,特别是面对英伟达CUDA这样一个巨大的生态下,都受到很大的挑战,该怎样进行应对成为了行业十分关注的热点。
CUDA生态是2006年英伟达推向市场,经过多年的生态发展,已经拥有450万开发者。这些“CUDA开发者”指的是用CUDA语言和使用CUDA接口的开发者,是一个非常庞大的软件生态大军。
北京大学讲席教授、RISC-V国际基金会人工智能与机器学习专委会主席谢涛认为, 国产AI芯片公司,包括国际上的一些AI芯片公司一般会采用“打不过就加入”的思路,即采用兼容CUDA软件生态,特别是走GPGPU路线的做法;另外一些AI芯片公司走的则是非CUDA路线,整体上呈现“小、散、弱”的局面。
北京大学讲席教授、RISC-V国际基金会人工智能与机器学习专委会主席谢涛
“这样的一条道路虽然能够解燃眉之急,但长远来看它还是受制于人。包括:1. 指令集不统一,硬件架构分散;2. 软件栈不统一,用户学习成本高;3. 算子覆盖度低,用户迁移成本高;4. 企业各自为战,没有足够的生态竞争力。”谢涛为此提出,可否借鉴安卓震撼iOS生态的模式来震撼CUDA生态?RISC-V能否成为团结大家一起开源开放去共建生态的一个很有效、而且重要的抓手?
孙凝晖在信息技术新体系的思考(中国科学院院刊2022.37)中列举了创新的三种模式:
谢涛认为,在CUDA相关的AI软件生态下,其实也有“AB体系”可以选择:
A体系:加入CUDA阵营(壁仞/阿里平头哥等),研发永远处于“跟随”状态,被人牵着鼻子走、难以绕过大量专利,只能靠开源的编译器规避诉讼虽然容易获得客户,但是反而加强了CUDA生态。英伟达每发布新一代版本CUDA的时候,会加进去会很好发挥新一代英伟达芯片特性特点的API,通过这个手段每次发布新的CUDA版本都能托其它的芯片公司几年。这也是一个可能的风险,哪一天开源编译器也不能用、不能变异非英伟达的AI芯片,这个时候对采用这个路线的企业来说就是一个很大的冲击了。
B体系:自定义编程语言(华为昇腾/寒武纪等)。成本高昂:各公司需维护一整套软件工程团队,积累数十年研发投入;人才稀缺:系统软件、编程语言、编译器人才稀缺;力量分散:各公司各自为战,难以形成有效合力与CUDA抗衡。
目前RISC-V AI芯片存在两种主要模式:1. Integrated模式(紧耦合)适合低功耗领域(RISC-V+AI),以CPU主干为骨架,集成在CPU内部,共享PC、寄存器堆等流水线单元,只是在执行单元部分增加了矩阵或向量单元。2. Attached模式(松耦合)适合大算力领域(AI+RISC-V),外挂在CPU上的,会有自己独立的流水线、寄存器堆、缓存等。它是“协处理器”,它可以接收来自一个或多个CPU的指令,异步地执行不同CPU提交过来的任务。
在谢涛看来,如果基于RISC-V构建AI算力,其优势将主要体现在以下四方面:
生态碎片化、资源投入严重不足、缺少组织统筹、产学研协同不紧,是我国RISC-V+AI生态面临的机遇与挑战。应对挑战的整体思路来自三方面:
而具体的破局思路,则是以国际标准+开源社区两抓手。具体而言,首先,要以推动RISC-V国际标准为抓手到国际借力。也就是把握“根技术”,从我国领军企业共识出发,快速布局新时代的新市场(智能终端、AIPC等),以推动国际基金会标准来依托上游国际开源社区来贡献系统软件栈。
其次,以共建国际开源软件生态为抓手到国际借力。就是团结企业一起探索、探讨,也要定出Triton,比CUDA要更高层,团结大家一起以“粗烟囱”的方式和GPGPU齐头并进。另外就是英特尔主推的SYCL,它也是一个行业依托国际方兴未艾、能够很有生命力、发展很快的软件生态之一。在这个场景下,北京开源芯片研究院今年成立了多个指令标准集工作组,并在今年发起了“甲辰计划”,呼吁生态链企业携手共建软硬件生态,目前有超过40家的开源社区企业加入。
“现在万物智联时代,大家在‘端’上可以作为出发点,最后再通过‘农村包围城市’的方式在‘云’上和英伟达进行抗衡。我们现在做的,并不是像英伟达那样搞450万大军的人海战术,而是要聚焦在系统软件栈、编译等领域,组织全球力量一起去发展和建设。”谢涛强调称。