目前英伟达因其 GPU 芯片在 AI 革命中扮演着核心角色,使其成为AI时代最赚钱的公司。
本文作者 Pete Warden 总结了铸就英伟达 AI 霸主地位的四点优势:几乎无人运行大规模机器学习应用;英伟达的替代品都很糟糕;研究人员掌握着硬件采购的风向舵;训练时延的影响。
随着 AI 技术的发展,Pete 预测,上述优势将逐渐发生变化:英伟达在整体 AI 市场中的份额占比将下降,虽然 AI 市场整体将大幅增长,英伟达的绝对销量会有所增长,但却难以继续维持目前的利润率。
Pete Warden 是智能传感器公司 Useful Sensor 的创始人,出版了《公共数据手册》和《大数据词汇表》,创建了 OpenHeatMap 和 Data Science Toolkit 等开源项目。
(以下内容由OneFlow编译发布,转载请联系授权。原文:https://petewarden.com/2023/09/10/why-nvidias-ai-supremacy-is-only-temporary/)
作者 | Pete Warden
OneFlow编译
翻译|宛子琳、杨婷
英伟达(Nvidia)是一家令人敬佩的公司,几十年来他们勇于逆势而行,实现与众不同的愿景,并因其在 AI 革命中扮演的核心角色(GPU 成为神经网络计算的引擎),成为了市值最高的企业之一。
然而,我认为在未来几年内,英伟达在机器学习领域的主导地位可能会受到一定程度的动摇,本文将详细解释其中的原因。为阐明这一观点,我打算探讨一些驱动英伟达目前主导地位的因素,以及未来可能发生的变化。
1
目前的优势
1. 几乎无人运行大规模机器学习应用
除少数几家大型科技公司之外,很少有其他公司真正开始大规模地在生产环境中运行大型 AI 模型。这些公司仍在探索如何利用这些新能力,因此它们的成本主要集中在数据集收集、用于训练的硬件以及模型研究者的薪资。这意味着机器学习更重视训练,而非推理。
2. 英伟达难以被替代
对于创建或使用机器学习模型的开发者来说,相比使用 AMD 的 OpenCL卡、谷歌的 TPU、Cerebras 系统或其他硬件,使用英伟达的 GPU 更容易且更省时。英伟达的软件堆栈更加成熟,提供了更为丰富的示例、文档和相关资源,更容易找到有经验的工程师,与主要框架的集成效果也更好。实际上,英伟达在构建平台效应方面无可匹敌,当前的市场形势呈现出明显的赢家通吃倾向,英伟达毫无疑问就是那个脱颖而出的赢家。
3. 研究人员掌握硬件采购的话语权
雇佣机器学习研究员是一项极具挑战性的任务,经验丰富的专家享有丰富的职业选择,满足他们的需求至关重要,而他们的需求之一就是英伟达平台。这些专家已经熟悉并能高效地在英伟达平台上工作,而使用其他的替代平台需要时间,且不一定能获得同等的职场认可。考虑到雇佣和留住机器学习研究员的高昂成本,购买硬件时必须优先考虑他们的偏好。
4、训练时延的影响
根据经验,通常情况下,从头训练一个模型大约需要一周时间。自 AlexNet 早期以来,这一规则一直适用,因为如果迭代周期变长,就很难进行实证测试和原型制作等关键步骤了,而这些步骤对于达到所需的准确度目标来说仍然至关重要。
随着硬件性能的提升,人们构建的模型也越来越大,这导致训练时间再次接近原先的水平。为获得更好的效果,人们开始侧重于构建更高质量的模型,而非减少整体训练时间。因此,购买最新的英伟达 GPU 变得极具吸引力,因为大部分现有代码可以直接使用,只是运行速度更快。理论上说,竞争对手有机会通过较低的时延赢得优势,但由于其软件堆栈并不完善(CUDA 在此方面已投资了数十年),这一机会只是一种幻觉。
2
会发生怎样的改变?
希望上文所述的几个原因足以成为解释英伟达取得成功的重要结构性因素。以下是我对上述因素未来变化情况的预测。
1. 推理(inference)而非训练(training)将占据主导地位
几年前有人告诉我:“训练成本与研究人员数量成正比,推理成本与用户数量成正比”。我从中得出的结论是,在未来某个时刻,公司在用户请求上运行模型的计算量将超过他们用于训练的计算量。虽然单次训练的成本较高,运行推理的成本较低,但世界上有着大量的潜在用户,涉及众多不同的应用场景,这些推理需求的累计总量将超过训练总量,因为研究人员的数量毕竟是有限的。
对于硬件来说,这意味着优先级将转向降低推理成本。很多机器学习研究员将推理视为训练的一个子集,但从根本上讲,这种看法是错的。
在推理过程中,由于需要在时延和吞吐量之间做权衡,所以通常难以组装出大批量的输入数据,而在面向用户的应用程序中,时延一直是至关重要的影响因素。小型或单个输入批次会显著改变工作负载,并需要采用截然不同的优化方法。此外,在推理过程中,还有很多因素(如权重)是保持不变的,因此可以通过权重压缩或常数折叠(constant folding)等预处理技术来获益。
2. CPU 在推理方面的竞争力
在模型训练过程中,CPU 的速度仍然慢得让人难以接受,因此上文在列举英伟达的替代品时,并没有提及 CPU。但主流的桌面级 CPU(x86、Arm,以及可能即将推出的 RISC-V)经过了几十年的工具链投资,比英伟达具备更成熟的开发工具和社区。此外,主流 CPU 的单次计算操作成本也远低于任何 GPU。
回顾互联网时代的早期阶段,当时建立互联网公司的主要成本是从 Sun 等公司花费数百万美元购买高端网络服务器硬件,因为它们是唯一能够可靠地提供低时延网页服务的平台,那些服务器拥有当时市面上最快的硬件配置。当整个网站需要在一台机器上运行时,硬件速度就成了至关重要的因素。然而,随着分布式软件的应用,人们可以将工作分配到大量性能相对较低但廉价的通用 x86 服务器上,这导致 Sun 的市场份额迅速萎缩。
目前,模型训练很难以类似的方式进行分布式处理。虽然工作负载可以在相互紧密连接的几个 GPU 上进行分割,但不断更新的模式使得通过在低端 CPU 上进行分片(sharding)来减少时延变得不现实。不过,对于推理阶段,情况则不同。模型权重是固定的,因此可以在初始化阶段轻松地在许多机器上进行复制,而无需通信。这使得大量的商用 PC 对依赖 ML 推理的应用程序来说非常有吸引力。
3. 部署工程师话语权增加
随着推理成本开始主导训练过程,降低推理成本的压力将越来越大。在这种情况下,研究人员的偏好将不再是最高优先级。为精简生产流程,他们需要从事一些相对不太感兴趣的工作。随着相关技能的广泛普及,未来几年将会有更多能够训练模型的人进入劳动力市场。这意味着研究人员在企业中的话语权将被削弱,而部署团队的需求会更受重视。
4. 应用成本规律
当推理阶段占据整体人工智能预算的主导地位时,硬件和工作负载的需求会有很大不同。研究人员十分注重快速实验的能力,因此他们需要具备灵活性来进行新想法的原型设计。相对来说,应用程序通常较少更换模型,一旦研究人员找到了符合他们需求的模型,可能会在多年内使用相同的基本架构。
或许我们正朝着这样一个世界前进:模型作者使用类似于 Matlab 针对数学算法的专门工具,然后将结果交给部署工程师,由他们手动将结果转换为更适用于特定应用的高效形式。这一推断不无道理,因为如果模型架构保持不变(即便权重发生变化),随时间的推移,任何的成本节约都会倍增。
3
上述改变意味着什么?
通过上述的四个预测可以得出结论:英伟达在 AI 市场份额中的占比将下降。虽然 AI 市场整体将大幅增长,英伟达的绝对销量可能会继续增长,但将难以持续维持目前的利润率。
在这种转变中,预计传统的 CPU 平台(如 x86 和 Arm )将胜出。推理过程需要与传统的业务逻辑紧密集成,以运行终端用户应用程序,因此很难想象,即使是针对推理而专门设计的硬件也能够跨越总线(bus)运行,因为涉及延迟问题。相反,我预计 CPU 将获得更加紧密集成的机器学习支持,首先作为协处理器,最终作为专门的指令,就像浮点数支持的演变一样。
以上因素推动着我的研究和创业方向。未来几年,改进模型推理将带来巨大的影响,但与训练相比,推理仍然被忽视。
不过,这种情况正在发生改变。像 Reddit 中的 LocalLlama 社区专注于推理的改进,GGML 的成功则证明了人们对专注推理的框架的需求之大,此外,几个通用模型的传播也增加了推理优化的回报。
我之所以如此关注边缘端,是因为它最接近未来将运行大部分云端 AI 的大规模普通 PC 的环境。早在2013年,我开始编写 Jetpac SDK ,旨在通过在 100 台 m1.small AWS 服务器集群上加速计算机视觉,相较于在数百万张图像上进行推理的 GPU 实例,这种方法更加经济高效。后来我才意识到 SDK 在移动设备上的适用性如此之好。
其他人都在看
试用OneFlow: github.com/Oneflow-Inc/oneflow/