“B公司的芯片迭代到了第三代,但每一代芯片架构思路都在变,甚至首席架构师都不同,设计出的硬件微架构也有很大的不同,硬件架构没有延续性,就算软件的工程师再努力,软件也难以复用,每一代产品软件就像是从零开始。”了解B公司的马超(化名)说:“另一方面,B公司没有能真正掌控整个软件栈的技术大牛。”
一位B公司的前员工透露,公司没有业界顶尖的大牛,软件团队的人背景虽然都还不错,但就背景差不多造成了相互看不上,怎么可能做出好产品。当然,公司请过一个业内某技术领域的高手,但面对AI芯片这么大一摊子软件,估计也很难把控,待了一个多月两个月就离开了。
对于这种情况,几位业界人士有一些共识,这家公司的创始人确实是有深厚积累的芯片专家,但毕竟不是芯片架构方面的专家,有局限性也很正常。但这家公司的创始团队中没有软件的大牛,外部招来的人即便能力再强,也很难被“接纳”,在核心管理团队中没有话语权,也很难发挥合力做出好产品。
没有高效、好用的软件,也是B公司的投资人虽然购买了少量芯片测试,但没能通过灰度测试,进入大规模采购环节的关键原因。当然,B公司也拿到了政府项目,订单金额不小,但实际能不能产生真实利润都存疑,算不上高质量、可复制的落地项目。
其实,目前国内AI云端芯片公司大部分创始团队都是有深厚的芯片从业背景,在对软件的理解和重要性的认知上有明显的局限。
一位国内AI芯片公司软件的负责人直言:“CEO和CTO都听不懂我的工作。一些国内AI公司创始人对软件的认知,相比领先的国际大公司,我认为有十几年的差距。”
那么,AI芯片的软件到底难在哪?
被AI软件栈困扰的AI芯片公司负责人陈俊(化名)指出,一方面,AI芯片的软件是从零开始,具有天然的复杂性,与CPU不同,各家的AI芯片计算架构和指令都不同,从编译器到库再到框架的适配,都不像CPU一样有开源可以复用的东西。
另一方面,AI的软件生态实际上就是英伟达生态,但英伟达的软件生态,尤其是CUDA相关的核心部分都是闭源、封闭的,想要将自家的软件与英伟达的生态兼容的难度可想而知,想要短期内自己建立一个新的AI生态,无异于痴人说梦。
最后,云端AI推理应用的多变性。目前AI的算法和模型仍然在快速发展和迭代,好不容易实现了图像分类ResNet 50模型的优化,新的语言模型BERT模型又开始流行,自然语言处理模型又开始越变越大,BERT的各种变形枝繁叶茂,这也增加了AI芯片软件的开发难度。
尤其是编译器相关的开发难度,以及针对不同模型不依赖手工优化,仅通过编译器完成自动化性能优化的模型泛化能力,这个能力的缺失几乎成了大多数AI芯片停留在“送测”而不能获取订单的核心原因。
这些是所有英伟达的挑战者面对的技术难题,同时还有人才的挑战。
马超和大多数AI芯片的从业者有相同的观点,“要打造一个完整易用的AI软件栈,必须要有一个不仅熟悉驱动、固件等基础软件,既能够从上向下看,也要能从下往上看,对整个AI软件生态有全面认识,有足够经验和能力的软件大牛。”
“AI芯片火起来之前,在国内做编译器是个非常冷门的职业。”陈俊说:“编译器是AI芯片软件栈中重要的部分,国内芯片相关软件人才非常匮乏。”
手握入场券,败倒在客户「变态」的模型里
AI芯片创业公司软件栈的问题并非无解,已经在百度落地的昆仑芯,以及在字节跳动落地的希姆计算,是国内为数不多被商业市场检验通过的AI芯片公司,摸索出了一条具备可复制性的商业化道路。
熟悉希姆计算的王雷(化名)说,“软件都是和场景相关的,想要把软件做好,只能接近客户,深入业务。不仅要和客户负责系统的人谈,还要和运维、业务场景、算法的人深入沟通,否则很难把软件做好。”
“想把软件做好哪有捷径可以走,国内AI芯片公司都在一个起跑线上,也都有互联网大厂的投资人,希姆计算能稍微跑的快一点,还是负责市场落地的人天天泡在客户办公室和工厂里磨出来的,但即便这样,也不能保证未来的成功。”王雷认为。
但AI芯片公司也不是轻轻松松就能获得与客户深入沟通的机会。一般的情况是,有需求的公司(比如BAT和移动运营商)会公开招标,AI芯片公司寻求合作,经过初步筛选之后,符合需求的AI芯片公司可以送测产品,在现场运行客户给的AI模型。
“很多公司连编译那一关都过不去。”王雷说,“即便能编译,不少公司声称算力是英伟达同级别产品的2倍,实际还不到其性能的1/4。”
张伟表示,“主要还是因为编译器做的不够好,通常都是依据芯片存算特征针对特定的模型手动做了优化,不具备泛化能力。所以在遇到客户特别‘变态’模型的时候,就会遇到困难,就算手动编译通过,性能也会受限。比如一般情况下,96*96尺寸的图片,可以顺利编译,吞吐性能还不错,但客户会根据自身业务需要对输入的图片尺寸进行调整,比如调整到1280*720,那性能就会受到大幅度影响,甚至编译不通过。更有甚者,模型结构都会发生诸如基础算子和逻辑的变化,那编译器的泛化能力是很难支撑直接跑起来的。”
这就是AI芯片编译器的另一个难点所在,由于客户的AI模型与其业务密切相关,涉及商业机密,因此并不会直接把模型给芯片公司,AI芯片公司很难提前做有针对性的优化。
但即便进展更快一点,昆仑芯也需要更多时间完善其软件栈。张伟了解的情况是,昆仑芯的AI芯片在搜索场景对比英伟达的产品有一倍多的性能优势,但在其它场景优势很小甚至没有优势。
“有听到昆仑芯的客户反馈离开了昆仑芯的人帮忙调试,芯片还是很难用起来。”陈俊说,“软件还是不够好用,所有AI芯片公司都还需要时间去打磨,这需要一个过程。”
这对所有云端AI芯片公司而言都是一个需要花非常多时间和精力的工作,在落地的过程中可能需要为客户开发数百项特性,这是在设计硬件和开发软件栈之初都无法完全明确的需求,甚至都意识不到用户会有哪些应用场景和需求。
今年交卷,2024年开始淘汰
云端AI芯片公司们的落地竞赛已经开启。马超认为,AI芯片公司今年下半年是给投资人和市场交答卷的时候了,今年如果还不能上量落地,可能今年底明年初就会有公司开始收缩。
陈俊认为,云端推理AI芯片的格局明年会更加明朗。
王雷则认为,即便是融资几十亿的AI芯片公司,按照千人规模,人均百万的薪资计算,融资最多能撑到2024年,那时候就能看到真正裸泳的人。
想要在AI市场的竞争中不被淘汰,产品和选择一样重要。AI云端芯片公司们优先把目光投向了采购规模在亿美元级别头部互联网公司以及政府的项目。
张伟说:“政府的项目看起来需求很大,但实际比预想的需求小很多。”
“政府的项目看起来金额很大,芯片公司自己要承担的成本也很高,实际上利润不高。更重要的是,政府的AI项目不具备延续性和可复制性。”张超表示,“寒武纪近几年每年都有政府项目签单,如今的市值也不到300亿,这足以说明资本的态度。”
“那些一个项目没落地,估值快赶上寒武纪的公司,未来怎么持续发展?”多位AI芯片圈人士都质疑。
因此,当下检验一家云端AI芯片公司,无论是采用DSA(领域专用架构)还是GPGPU架构,能在互联网公司落地才是有硬实力的体现。
互联网公司对于AI芯片有严苛的性能和稳定性要求,能够在互联网公司的场景中落地,不仅证明了产品的可用性,也说明了其AI芯片落地的可复制性。
但也要看到,BAT的增长在放缓,AI算法的迭代速度也在变慢,AI芯片的前途虽然光明,但道路依旧曲折,特别是还有英伟达这个难以超越的领导者。
英伟达耗费十多年打造了以CUDA为基础的AI生态,有大量的合作伙伴共同优化软件和适配最新算法,有业内顶尖的硬件团队不断迭代产品,客户也早已习惯英伟达的软件平台。“我们怎么可能用几年时间就赶超别人十几年的成功?梦都不敢这么做。”这是一位AI芯片创业公司CEO的心声。
“差距和难度确实存在,但许多人都只是为了赚快钱,先把公司做大,不好好打磨产品,赶着商业化,然后尽快上市变现,最后能留给中国半导体产业什么?”这是从业者留下的还没有答案的问题。