介绍
2009年,NVIDIA领军人物黄做出了一个影响深远的结论:“NVIDIA是一家软件公司”。 在此期间,NVIDIA已经开始将资源集中在GPGPU(GPU是图形加速卡;GPGPU是一个并行计算平台,既可以做图形加速,也可以做其他并行计算加速)以及支持GPGPU发展的CUDA。 随着AI等性能敏感场景的大规模爆发,NVIDIA的估值已经超越英特尔等竞争对手,迎来了辉煌的NVIDIA时代。
未来,更多的芯片公司将逐渐将更多的资源集中在框架等软件能力上,以便让自己的芯片变得更好、更方便客户使用。 芯片公司逐渐变成了软件公司。
现在,芯片行业面临着新的挑战:很多互联网客户已经开始研发自己的芯片。 本质原因是传统芯片企业缺乏创新,没有合适的产品来满足互联网消费者的业务发展需求。
未来,芯片公司仅仅把自己变成软件公司是不够的。 他们需要进一步自我创新,从软件公司转型为互联网公司。 他们比客户更了解客户:只有深入了解用户的需求和痛点,才能提供明显的竞争优势。 只有最佳的性价比,才能满足客户功能差异化和业务快速迭代,支撑用户业务和价值的快速创新。
1传统芯片公司“闭门造车”
传统芯片公司的传统思维是这样的:设计一款性能、成本、功耗均衡良好的芯片,然后用相关的驱动和开发工具包来支持。 更好的有开发库和框架,甚至提供交钥匙级别的参考。 设计。
一般来说,能做到这一点的芯片公司已经足够好了。 但时代变了,远远不足以满足这个要求。 因为这样的解决方案是静态的、局部的、短期的; 缺乏动态、宏观、长远的解决方案。
1.1 芯片的性能足够好,但灵活性和易用性不够
CPU是最通用的处理器:CPU指令是最基本的加法、减法、乘法和除法。 我们可以使用这个最基本的指令来组合我们想要的任何程序和软件。 然而,随着性能要求的不断提高,我们必须通过硬件加速来不断提高性能。
硬件加速单元估计可以被认为是一个特别复杂的宏指令。 硬件加速的缺点是,由于单元估计的复杂性,硬件所能支持的系统灵活性显着增加。
例如,为了更好地支持张量估计,AI处理器提供了非常强大的张量估计能力。 但一方面受限于算法模型的多样性,另一方面受限于不同AI处理器架构的多样性(甚至存在同一家公司的三代芯片架构不同的情况)不同。这里的架构指的是加速器呈现给HostCPU的socket架构,而不是具体实现的微架构),导致很难快速高效地将AI模型映射到特定架构的AI处理器上,导致性能效率低、开发效率低等可用性问题。
这类问题导致AI处理器面临的场景规模有限,场景生命周期有限,进而导致芯片无法大规模落地,无法带来芯片的价值进入游戏。
1.2 只解决单一问题,但客户需要全面的解决方案
CPU是通用方案,几乎适用于所有场景; GPGPU是并行计算,适合几种常见的现场加速场景; DSA,只适合特定领域; ASIC,只适合特定场景。 从CPU到ASIC,覆盖的场景越来越小,覆盖场景的生命周期也越来越短。
我们提供芯片A帮助客户解决问题a,提供芯片B帮助客户解决问题b,以此类推。 但这会带来很多问题:
1.3 芯片公司架构个性化,而客户要求架构统一
在手机等终端上,软件是从属于硬件的。 在提供硬件的基础上,提供相关的驱动程序以及其他相关的开发和参考设计就足够了。 无需关注不同架构芯片的跨平台问题。 在云计算、边缘计算,甚至一些超级智能终端(如手动驾驶芯片NVIDIA Thor等)上,软件实体和硬件实体是完全独立的,软件实体可以运行在不同的硬件平台上; 反过来,硬件实体也可以支持不同软件实体的运行。 为此,跨平台软件就成为非常重要的能力需求。
在软件虚拟化时代,可以利用虚拟化技术屏蔽硬件插座/架构差异,软件可以从一种硬件迁移到另一种硬件。 硬件虚拟化时代,软件和硬件的socket直接暴露给VM/容器等虚拟化实体,并且加入越来越多的异构计算引擎。 为了继续支持软件迁移,越来越需要考虑硬件架构。 问题。 硬件架构一致性问题越来越明显!
芯片设计不再是一家公司考虑模型、架构的问题,更多的是“兼容主流生态,兼容其他芯片架构,而是高效、标准、开放,甚至可持续演进”。
2互联网公司研发自研芯片
之前有一篇文章:亚马逊AWS自研芯片深度剖析,对AWS自研芯片之路进行了详细剖析。
目前,几乎所有有实力的互联网公司都在研发自己的芯片。 整理这些信息的文章有很多,这里不再赘述。
2.1 云估计等复杂场景特点
互联网和云估算公司的业务场景尤为复杂,其硬件相关特性主要体现在:
规模非凡。 例如,AWS拥有超过500万台服务器,分布在全球27个地理区域和87个可用区。
海量数据。 据IDC预测,到2025年,全球数据量将超过175ZB,复合下降率达27%,云数据存储占比将超过50%。
复杂的网络。 关键是带宽和延迟,还要关注域间隔离和跨域访问,以及访问控制、网络快速变化等。
虚拟化、池化和多租户。 主机/容器虚拟化,实现资源隔离; 虚拟化+池化,资源自由组合; 多租户资源共享。 核心价值在于提高资源利用率、增加成本。
安全问题。 包括网络安全、存储安全、数据安全、信任根与“零信任”、可信估计等。
灵活性和可扩展性。 纵向扩展,资源数量的增减; 横向扩展,资源容量或性能的增加或减少。
复杂系统解释。 微服务/云原生,东西流量更多。 复杂的系统不断被重组,以与多个家庭和系统共存。
便携性和硬件插座一致性。 运行实体与硬件环境分离:虚拟化屏蔽硬件差异,虚拟机/容器迁移到不同服务器。 硬件插座与虚拟机直接相连,要求不同厂家的硬件插座保持一致。
具体场景服务。 资源池化后,通过组合不同比例的CPU、内存、存储、网络等资源,扩展针对特定场景优化的实例类型。
事实上,云计算等宏观复杂场景具有许多超越单个硬件的中间功能。 这就需要硬件平台能够支持足够的系统灵活性,以满足系统当前和未来的需求。
2.2 与场景结合的三种形式
复杂的估计场景(例如云估计)对灵活性的要求低于对性能的要求。 当性能满足要求时,CPU是最合适的云估算平台。 现在,CPU的性能遇到了麻烦,必须使用硬件加速来提高性能。
这就是目前的矛盾所在:一方面,芯片需要与特定客户的特定业务深度融合,实现业务的硬件加速;另一方面,芯片需要与特定客户的特定业务进行深度融合,实现业务的硬件加速; 全年快速迭代。 目前业界应对这一挑战的方式主要有以下几种。
第一种形式是基于场景为客户提供(感知的)最优的业务加速解决方案。
问题是:
第二种形式,供应商与客户深度合作,生产满足客户需求的产品。 为大客户自研芯片也可以算作与客户的深度合作(内部客户也是客户)。
这样做的优点是:
缺点可能是:
那么,还有第三种解决方案吗?
形式三:做平台化产品,客户可以通过编程实现自己需要的功能。
平台的可编程性可以轻松实现。 然而,如何在保证ASIC级别极致性能的同时,仍然让用户掌控一切,让用户编程来决定业务逻辑,是一个具有挑战性的课题。
如果能做到:足够的性价比(极限性能提升数量级,价格更实惠)、足够通用(覆盖更多客户的更多场景)、足够灵活(覆盖客户常年快速的业务逻辑演进) )、易用(兼容现有开发环境和业务逻辑,客户平滑迁移,不需要太多学习成本,无平台依赖),实现“用户软件定义一切,平台硬件加速一切”的目标是未来的挑战都是你们需要面对和解决的。
3 客户自研分析
短期来看,当一个行业发生变革时,客户比供应商更早感受到“阵痛”,需要更多底层创新来驱动自身业务竞争力。 但从更长远的角度来看,情况不一定如此。
3.1 客户的基本需求
在互联网行业,很多客户开始开发自己的芯片,这是一个重要的趋势。 很多人认为互联网公司为了打造自己的护城河,已经开始构建“封闭”的体系。 而我们更多的感受是:随着互联网云、边缘计算的发展,底层软件业务对底层硬件的要求越来越高。 然而,传统芯片公司虽然拥有一些先进技术,但仅限于闭门造车。 这项技术并没有给客户带来新的、更大的价值,反而在某些方面限制了客户的价值。 这种矛盾迫使一些有自研能力的用户“自己动手,丰衣足食”,开始了自研之路。
那么,“如果你想喝果汁,真的要自己培育吗?” 用户的本质诉求是什么? 下面我们深入分析一下:
如果有通用芯片解决方案满足上述需求,用户不会形成平台依赖,不会对用户自身业务的核心竞争力构成威胁,但功能会更强大服务器是属于硬件还是软件,性能会更强大。会更强,价格也会有明显优势。 客户 我还需要自己做研究吗?
3.2 宏观、长远、发展的客户自研
回顾互联网大鳄的自研芯片,更多的体会是行业和技术正在发生变化:云计算、边缘计算出现后,系统规模扩大了数量级。 只有互联网公司能够深入了解这种系统的需求,但芯片公司对系统的把握就有些捉襟见肘了。
但从更宏观、更长远、更发展的角度来看,全球整个产业是国际分工,每个地区的每个企业都做自己最擅长的事情。 最经典的例子非联发科莫属。 在联发科之前服务器是属于硬件还是软件,设计和制造是一体化的,典型的公司是Intel、AMD和TI。 联发科创造性地只做代工,不做设计,从此有了Fabless。 记得十多年前,英特尔还处于鼎盛时期。 很多人羡慕英特尔能够从设计到工艺的整个流程进行优化,因此其产品的性能和成本是其他人难以达到的。 现在,在海力士、三星等的竞争下,英特尔自己的设计和制造造成了相互阻碍。 联发科打造的核心竞争优势,导致很多顶级Fabless公司根本就没有想过建自己的鞋厂,或者说不想建,但不能建。
人类发展的过程就是从“男耕女织”到“手工作坊”,再到流水线上的“工业化大生产”,再到今天的“全球分工”。 从更广泛、更长久的角度来看,很多技术都会随着时间的推移而积累,云计算等互联网底层技术也不例外。
事实上,底层芯片企业需要不断创新自己,这样才能真正帮助客户、成就客户,也成就自己。
4 芯片公司需要创新,比客户更了解客户
4.1 系统变得越来越复杂
让我们简要定义系统分类的三个级别:
云计算、边缘计算、超级终端场景等复杂系统场景:需要支持操作系统和虚拟化,包括虚拟机、容器等不同级别的虚拟化; 需要支持资源分割; 需要支持系统、资源和性能隔离; 需要支持软件跨硬件平台,包括硬件套接字表示和实时迁移。
从系统角度来看:
4.2 芯片企业需要成为互联网企业
系统规模较往年增加了多个数量级,形成了日益复杂的宏观系统:
系统规模不断增大,系统技术体系不断演进,系统架构不断被解构,芯片公司/团队也需要自我升级:
过去都是小型系统芯片公司。 芯片公司是纯粹的芯片公司。 软硬件人员比例约为1:1-1:2,公司核心围绕芯片展开。
如今,大型系统芯片公司。 芯片公司本质上是软件公司。 NVIDIA的老黄很早之前就提到过,NVIDIA是一家软件公司。 开发大型系统芯片的公司,人员比例基本在1:5+。 芯片人员是核心,但数量相对较少。 软件人员的数量明显超过硬件人员的数量。
未来,宏系统芯片公司。 芯片公司本质上是互联网公司。 此时,芯片企业对融合万物互联、云网边端融合的超大型系统有了深刻的认识。 只有这样,他们才能控制超大型系统,实现硬件和软件的深度集成,并提供赶上用户需求的创新解决方案。 高价值的产品、解决方案和服务。 在此期间,硬件和软件人员的比例普遍为1:10+。
(全文结束)