CPU 的性能是不是快到天花板了?为什么?

发布时间:
2023-08-24 12:41
阅读量:
12

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

高性能CPU作为“皇冠上的明珠”,没有后发优势,不可能弯道超车,更不可能一步到位。

  1. 完全从头重写高性能CPU需要的周期很长,举几个例子感受下:

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

(2)Apple M1中的Firetail core(大约22分/GHz),是从2010年的Apple A4(基于ARM Cortex A8)一直迭代到现在的产物。

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

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

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

2. 国内在高性能CPU微结构设计方面的积累和人才不够。

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

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

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

3. 高性能CPU设计没法弯道超车,没有后发优势

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

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

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

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

4. 设计高性能CPUknow-how很难

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

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


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

  1. 融资足够或者产品能迭代起来有利润,只有这样才能养得起研发团队长期投入。
  2. 人员要稳定,CPU设计不像应用软件,上手很慢,看着文档理解代码都很难。之前看过一篇描述Adobe屎山代码没法改的文章,与其类似自行脑补。
  3. 领头人(或者技术负责人)必须要懂CPU设计,外行坚决不行。曾经有个领导说自研CPU要吊打AMD和Intel,研发团队经过讨论后我去汇报,我说需要100个人,三年开发两代产品(我已经是觉得资源很紧张了),对方站起来来了一句“不make sense”摔门而去,我心里也只能默念一句sx。。。
  4. 少一点内斗,再少一点。目测创业公司中因为内斗死掉的不低于30%吧,即使还没倒的,内斗也一直在持续。
  5. 想尽办法找市场,卖不出去就没法回笼研发资金,也就没法让研发人员持续深入的死磕微结构改进。

以上几个条件,融资和市场是基础,其他部分是顶层建筑,缺一不可。

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

END