在过去一两年中,苹果 Mac 的自研芯片转型,以及 ARM 在数据中心的一些胜利,引发了业界对 x86 和 ARM 的广泛争论——其中,有不少观点认为,x86 注定会失败。然而,这种看法忽视了一个关键事实:x86 生态系统(在 PC 和数据中心领域)庞大,拥有绝对的竞争优势;而且它是建立在 Intel 和 AMD 两家的支持之上,不仅仅是 Intel 一家。
问题来了:几乎没有什么内在缺点的 x86,真的注定会失败吗?近几个季度以来,苹果新款 Mac 在市场上的确表现良好,但这部分功劳也是基于台积电 5nm工艺节点和运行速度快的苹果 M1 芯片。但同样不可否认的是远程办公的兴起和芯片短缺也在苹果最新一代 Mac 的销售中起到了助推作用。
此前,一些投资者,如 Ark Invest 或其他投资人,以技术二分法发表了一些文章。本文将挑战这些文章所提出的观点:ARM 和 x86 只是指软件与 CPU 交流时必须使用的“语言”,最终性能还是取决于每个 CPU 的执行情况。因此,对于投资者而言,ARM 与 x86 之间的争论是没有意义的。
本文可以概括为两个层面:
首先,是苹果拥有世界一流的芯片工程团队,这毋庸置疑,这也是除了英特尔工艺制程延期之外,苹果 M1 芯片好评如潮唯一真正原因——但并非因为它使用了 ARM 指令集。
其次,是苹果 M1 的重要性被过分夸大了。苹果营销打造热度远超过该芯片能够做出的保证;例如最新 iPad 中 M1 芯片也可以被称为 A14X,因为芯片本身带来的创新相对不多。
实际上,我们应该认识到,无论是 x86 还是 ARM,都不是天生就具有优势或劣势。这一点得从更深入地理解指令集架构开始。当我们谈论计算机硬件时,我们通常讨论的是指令集,它定义了计算机可以执行哪些二进制机器指令,以及如何与软硬件接口。但这是一个基本的事实:任何给定的指令集中的所有基本数学操作都是相同的,无论其架构如何设计。更重要的是,即使不同的架构有着不同的实现方式,最终结果都是一样的,因为它们都能执行相同类型的问题,而解决这些问题需要一样的手段,比如晶体管来创建加法器或乘法器等功能。
CPU 性能提高主要来自于处理器内部结构改进,如流水线、乱序执行、分支预测等,而这些优化并不依赖于具体使用哪种指令集中,因此,在任何新的指令集中都会复制过来。这意味着即使某个新出现的心智模型导致性能巨大提升,那么旧有的方法也能很容易地适应这个新环境,使得旧系统继续保持高效工作状态。在这种意义上,将某个心智模型简单地归类为“优越”或者“劣下”的是不准确也不恰当。如果我们要讨论计算机体系结构的话,我们应该关注的是第二部分——基于任何指令集实际运行的问题,并不是第一部分,也就是说,只关注一种心智模型是否“占据”另一种心智模型的地位,就像是在学术论文中只关注作者国籍一样,让人觉得有些不必要。而对于那些想要了解这一切背后的真相的人们来说,从根本上理解这背后的事物关系比单纯比较它们之间差异更加重要。