公司新闻

9游会中国的芯片现状如何?

  9游会我曾经在几家以研发高性能CPU为目标的公司做过研发工作,其发展不算顺利,例如中晟宏芯(现在合芯科技)、华芯通等,总结了一些经验看法,对于高性能CPU为何很难这件事情我思考了挺久, 浅谈一点自己的看法, 抛砖引玉。我们暂定高性能CPU的分数以SPEC CPU 2006 speed 单线分/GHz划线,高于此的归类为高性能服务器CPU。本文所说的高性能CPU,指的是单核单线程性能,因为只有这个才能体现真正的设计能力。多核分数像是打群架,只要核够多就把多核分数堆上去。SPEC官网上的多核分数测试常年被日本霸榜,就是因为变态的小日子组了成千上万个CPU板卡连起来跑了个分,nonsense。

  先说结论:高性能CPU作为“皇冠上的明珠”,没有后发优势,不可能弯道超车9游会,更不可能一步到位。唯一能做好的办法就是埋头苦干,实践出真知。

  (1)高通之前的1000人QDT研发团队,在第二代core还不一定能够到15分,然而第一代就经过了两年多的研发(约10分/GHz),第二代研发(内测性能提升30%+)进入尾声又过去了两年,后来因为董事会不同意继续撒钱,项目彻底砍掉不了了之。

  (3)龙芯上一代3A5000是10.x分/GHz,这一代3A6000是15分/GHz,最新一代微结构性能提升了50%,这个性能已经达到了全球范围内的第一梯队,至少垫垫脚能看到前面的AMD9游会、Intel、Apple了。走到这一步龙芯坚持了21年9游会,值得让人尊敬。很多人看不起龙芯,全国范围内所有CPU设计公司,注意是所有,有哪家设计的CPU单线程性能超过了龙芯?有吗?!

  (4)鲲鹏920,大概10分/GHz,其中的图灵核是从2010年开始组建团队研发。

  曾经跟IBM和Qualcomm的架构师交流,如果把他们架构师核心团队原班人马拉出来,重新组织团队设计新的高性能CPU,没有两代(4-5年)也不可能达到目前AMD和Intel的最高水平。

  有人说,买了最新IP消化吸收再创新行不行?依然很难,中晟宏芯、华芯通、海光、还有几家买ARM N2,这几家都是这种思路,哪家已经做到了修改代码随心所欲不逾矩?RTL与软件的区别就再次。

  这里的人才不是说我们不够聪明,而是我们在这个方向上踩过的坑不够多。我们的工程师,勤奋聪明肯吃苦,但是在高性能CPU微结构方面的积累,全球只有美国、以色列两个地方算是最深入,ARM的高性能核设计也甚至仰仗于美国的研发团队。

  CPU微结构(可以认为是狭义的计算机体系结构)的基础知识不算很难,体系结构方向的硕士普遍就能入门甚至有较好的掌握,难得是如何把微结构设计的巧妙、均衡,我们在此方面的积累距离苹果、AMD、Intel还有些差距。我国从2010年左右才开始涉足高性能CPU的设计,之前自研的CPU都偏中低端,因此差距就是我们在高性能CPU涉及领域踩得坑不够多。这就像一个枪手,刚开始只练习手枪(中低端)射击,直接给他巴雷特很可能打不好,何况子弹(踩得坑)不管饱。

  高性能CPU的研发,需要不停的迭代,打磨。CPU就是艺术品,需要长时间对所有细节进行详细打磨,需要客户的不停的反馈问题,推动设计修改。如果没有客户使用,问题无法暴露出来,那么提升也就非常慢。

  很多人张口就来,我们有后发优势,我们要弯道超车,但这是有条件的。后发优势体现在,前面有人帮你踩了坑、淌了路,并且你看到了记住了学会了,这时候再去干就知道哪些能干哪些不能干。弯道超车的关键在于换赛道啊同学,你看新能源电车超车时,是不是换了老外们没啥积累的赛道上?这些高性能CPU能行么?答案是不行。

  先说后发优势。能完成高性能CPU设计的公司,CPU微结构的探索过程、PPA的优化过程绝对是内部极度保密的资源。IBM为了开发性能探索用的模拟器,甚至先开发一门“T语言”,这不可能公开。当年中晟宏芯买来的IBM的M1模拟器就是T语言编写,但是只给你加密后的二进制,付费也不给源码,不仅如此,core的微结构文档大幅删减,想读懂他们VHDL写的源码很困难;华芯通买到的高通代码不仅没有微结构文档,甚至连断言都给你删掉;更不用说美国政府限制的高性能浮点模块不允许出口,这些花多少钱也买不到。为什么这些不给?教会徒弟饿死师傅。

  再说弯道超车。高性能CPU设计就这一条道,没有新赛道,也就是想尽各种办法把微结构做的精致,提升单线程性能。没有其他道路可走,怎么弯道超车?如果没有新能源电动车,国产车还是很难超过合资汽油车。

  对于高性能CPU设计而言,如果你听到有人说出弯道超车、后发优势,默默心里骂一句sx就行了。

  有人说体系结构不有四大顶会ISCA、MICRO、HPCA、ASPLOS,为啥不从里面学习?首先这些论文的质量参差不齐。很多中了顶会的论文也是在灌水,不信你可以看看当年那件轰动体系结构圈的新闻(学生由于论文数据问题想撤稿,但是导师不允许,学生自杀),据我的读论文经验,顶会中的论文,可信度虽然比其他会高,但是数据要打折,环境要打折,结论要打折,具体打多少折扣得自己验证。其次,复现这些论文并验证结论是一件非常耗时的事情,要不然体系结构领域的博士生毕业都很困难呢。再次,有些好的idea由于学生毕业时间仓促等原因反而没有投到顶会,从这些论文中读出金子需要大量人力和时间,绝对算得上沙子里面淘黄金,Intel的研究院有很多预研人员做这些事,我国目前除了少数几家有相关预研人员,其他公司还未曾听说有这方面投入。最后,很多论文中很漂亮的idea,评估效果也不错,但是真正落到芯片中代价太大,例如面积太大、时序紧张等,但是尝试把新feature落到产品的周期都要以年为单位计算。

  5. 很多公司不愿意投入去设计新的高性能CPU core,造不如买。自己设计出来的core,10分/GHz,买来的20+;自己设计要投入十几亿甚至几十亿资金,周期还长,不如直接买来省钱便捷。

  那怎么才能设计出真正的高性能CPU呢?我也不知道,只能从失败的经验判断大概有那么几条:

  融资足够或者产品能迭代起来有利润,只有这样才能养得起研发团队长期投入。看一下目前国内做的比较好的CPU设计公司,特点都是公司有利润、产品能卖得出去,没有资本愿意长期投入不考虑回报,只有自己能造血才可以长久。

  人员要稳定,CPU设计不像应用软件,上手很慢,看着文档理解代码都很难。之前看过一篇描述Adobe屎山代码没法改的文章,与其类似自行脑补。

  领头人(或者技术负责人)必须要懂CPU设计,外行坚决不行。曾经有个自认为很懂ASIC的领导定目标,要自研CPU吊打AMD和Intel,研发团队经过讨论后我去汇报,我说需要100个人,三年开发两代产品(我已经是觉得资源很紧张了),对方站起来来了一句“不make sense”摔门而去,我心里也只能默念一句sx。。。一个好的技术负责人,往上能顶住来自不懂行的sx的瞎指挥,不要让这种无意义的瞎指挥影响研发进度和研发工程师的心态;往下能安排好项目进度,对于各研发人员的技术能力做到了如指掌,对项目难度和计划做到心中有数,自己的名声还要足够大且能力足够强,否则无法招聘到能力合适的员工,说白了你自己不行就不可能招聘到行的人。“文人相轻”在这一行表现比较明显,有人觉得我自己技术牛逼,看不起其他人,但是CPU是需要通力合作才能做好的项目,负责人还要有能力按住这些人,不要闹内讧。

  少一点内斗,再少一点。目测创业公司中因为内斗死掉的不低于30%吧,即使还没倒的,内斗也一直在持续。

  想尽办法找市场,卖不出去就没法回笼研发资金,也就没法让研发人员持续深入的死磕微结构改进。研发人员对于市场的认识很差,总感觉的我自己技术牛逼,做出来就不怕没人买,实际情况是越是高科技越要做好销售,因为客户可能不懂你的技术细节,要千方百计服务好客户才能获得订单,千万不要觉得“酒香不怕巷子深”。

  在我看来,真正高性能CPU(世界第一梯队)微结构设计的难度和重要性,不亚于5G、光刻机,只是目前暂时没有因为这个卡脖子。如果未来我们买不到任何一款国外高性能CPU芯片,买到的IP授权也不允许继续使用(国内能买到ARM N2的IP),作为信息时代最重要基础设施的国产云未来怎么办?