结论
目的
为什么机器学习系统设计的单元必须从模型变为集群?
集群栈不仅是一系列主题,而是一门实践中的学科。物理基础设施确立了速率与上限;分布式协议将这些上限转化为协同开销;部署系统把训练好的模型转化为具有延迟、可用性与成本约束的服务;治理约束则决定这些服务能否保持安全、鲁棒、可持续且可问责。六个原则构成一个整体结构,使工程师能够在某一层的最佳局部选择对另一层形成约束时,对整个集群进行跨层推理。以 \(C^3\) 的术语而言,专业习惯是识别计算、通信还是协同成为约束,然后沿着该约束贯穿各层,直到被工程化的是集群本身,而不只是模型。
Learning Objectives
- 将六个原则综合为分布式机器学习系统的约束映射
- 以 \(C^3\) 术语、故障率、服务义务与治理约束评估集群设计
- 分析基础设施、分布式训练、推理、运维与治理在集群栈中的相互作用
- 将安全、公平、隐私、碳与可靠性义务转化为可度量的设计约束
- 构建兼顾规模、可持续性、责任与运维纪律的工程判断
综合分布式机器学习系统
前沿模型只有在数千个加速器、互连链路、存储层级、调度器、服务副本、安全控制与治理检查协同作为一台机器运行时,才成为生产系统。任何一层都可能约束整个系统:
- 存储约束:一次缓慢的检查点可能浪费整个训练窗口。
- 互连结构约束:拥塞的互连结构可能抹去规模收益。
- 服务约束:供给不足的服务池可能把模型质量变成用户可见的延迟。
- 治理约束:一项未被度量的责任约束可能在技术系统已经可用之后阻断部署。
这种综合约束正是区分基础机器学习工程与分布式机器学习工程之处。基础机器学习工程聚焦于单个工件:单个系统上通过训练算法与架构设计优化的神经网络权重。分布式机器学习工程则聚焦于在规模上运行该工件的基础设施,包括数据中心、分布式协议与治理框架。六个原则定义了这一转变。
集群栈是有意设计的。开篇层构建了物理基础:使分布式机器学习成为可能的硅片、导线与存储。这一基础之所以重要,是因为每一层更高层的决策都会继承其上限。忽略加速器拓扑的训练策略、忽略数据加载吞吐量的存储方案,或忽略网络拥塞的调度策略,最终都会撞上其底层物理。
随后,分布层展示了这些物理上限如何转化为系统协议:划分工作、同步梯度、容忍故障与编排资源并非彼此独立的问题;它们正是把众多机器转化为一个有用的训练或-serving 系统的机制。部署层将同一逻辑向外延伸,推理、性能工程、边缘部署与运维把训练好的模型转化为具有延迟、可用性与成本义务的服务。负责任集群层补充了最终约束:技术能力必须保持安全、鲁棒、可持续且可问责。这些层将决策从算法选择贯穿到基础设施设计与治理。
分布式机器学习系统的六个原则
本书开篇的工程实践(先测量、为余量设计、与算法共同设计硬件)只有在其指明所要移动的约束时才真正有用。 表 1 中的六个原则正是这些持久现实:每个原则都指明一项约束、一个治理性问题,以及决定分布式机器学习系统能否扩展的度量。
单节点基础受严格的数学约束支配,例如铁律,性能是定量物理问题。集群级工程则将这一基础转化为概率性与运行现实:链路发生竞争、工作节点故障、调度器做出过期决策,政策约束改变了技术上可行设计可能做的事。这两个领域之间的桥梁是集群定律(\(T_{\text{step}}(N) = \frac{T_{\text{compute}}}{N} + T_{\text{comm}}(N) + T_{\text{sync}}(N) - T_{\text{overlap}}\)),该定律在 集群规模定律 中完整推导,并在全文的关键位置使用。集群定律充当铁律的分布式对应物,把单机执行转化为网络集体运行的机制,并驱动规模上观察到的运行行为。其三个成本项直接对应组织本书的 \(C^3\) 分类法:\(T_{\text{compute}}/N\) 是计算,\(T_{\text{comm}}(N)\) 是通信,\(T_{\text{sync}}(N)\) 是协同。重叠修正项 \(T_{\text{overlap}}\) 捕获隐藏在有用计算背后的通信或协同时间,而非定义第四个 \(C^3\) 轴。
这些原则构成一个分层架构,与 图 1 中综合的集群栈相对应。在物理基础层,基础设施决定能力1,因为硬件物理设定了硬性上限。
1 硬件能力上限:在集群规模下,硬件设定硬性物理上限(\(R_{\text{peak}}\),二分带宽、热设计功耗);超出这些上限的工作负载在基础设施或模型划分发生变化之前无法执行,因此系统工程成为在物理边界内适配计算这一学科。在中间层的运行现实中,通信占主导且故障是常态:这正是运行分布式系统的日常动态,直接由集群定律的网络与同步项驱动。在治理层,两条原则作为规范性约束作用于“可以构建什么”,而非仅仅“技术上可行”:责任约束设计,而可持续性是一阶成本。从这一栈中涌现出第六条原则:规模带来定性变化。
表 1 因此是一张决策地图,而非术语表:分布式机器学习系统的六个原则将每个原则与工程师在诊断集群级设计时所用的问题、度量与开发语境关联起来。下表及随后的梳理按规模上最常首先形成约束的顺序排列这些原则,从通信开始,而不是像 图 1 分层那样从基础向上排列。
第一条原则是:在规模上,通信可能成为约束项Narayanan 等 (2021年)。在许多同步训练形态中,除非围绕拓扑、重叠与批处理进行设计,梯度同步与拖慢节点效应会占据主导。生产推理系统也可能因尾部效应2 (Dean 和 Barroso 2013年) 而成为延迟受限,此时最慢的工作节点决定响应时间,无论其他节点完成得多快。
2 尾部延迟:对 在大规模下运行推理 中分析的尾部效应给出的标准扇出估计:在 99 百分位上,触及 100 servers 的请求有 63.4 percent 的概率至少命中一个慢服务器。
3 环形全归约:每个工作节点传输 \(2(N-1)M/N\) 字节(消息大小为 \(M\)),在 \(T_{\text{allreduce}} \approx 2(N-1)\alpha + \frac{2(N-1)}{N}\frac{M}{\beta}\)-\(\alpha\) 通信模型下给出 \(\beta\)。该系数随 \(\times\) 增长趋近于每个工作节点 2\(N\) 倍的消息量,同时对大消息保持带宽最优。详见 集合通信。
4 梯度压缩:集合通信 探讨稀疏化、量化与误差反馈作为减少通信载荷的方式,同时说明为何必须结合收敛性与误差累积成本来评估这种节省。
分布式训练 与 集合通信 详细展开这一原则,展示 Horovod 式环形全归约3 (Sergeev 和 Balso 2018年)、梯度压缩4 以及将计算与通信重叠,如何分别应对通信瓶颈。对于稠密集合工作负载,常规超配互连结构常常成为瓶颈,从而推动高二分带宽互连结构与匹配机器学习通信模式的传输选择。识别通信何时是活跃约束,有助于厘清算法优化何时真正有帮助,何时只是把工作在不同同样受限的资源之间转移。将通信互连结构扩展到数千个节点,也引入了新的运行现实:部件故障。
第二条原则由此直接得出:在分布式规模下,部件故障并非偶尔发生,而是持续发生。Meta 在 16,384 GPU 上训练 Llama 3 的经验记录了 419 unexpected interruptions 次故障,跨越 54 days,平均每 3.1 hours 发生一次中断(Dubey 等 2024年)。硬件故障、网络分区与服务中断都是系统必须无需人工干预即可处理的常规事件。大规模机器学习训练的同步性放大了每次故障的成本:单个失败节点会使集合中的其他所有节点停滞,迫使整个集群回滚到最近一次检查点。因此,单次事件造成的计算损失随集群规模线性增长,这正是检查点节奏与恢复架构之所以不属权宜之计、而是首要设计维度的原因。
5 弹性训练:TorchElastic 等框架通过停止幸存工作节点、重组工作节点组并重启新秩的工作节点来响应成员变化;框架负责 rendezvous 与成员管理,而用户代码仍对检查点、批处理大小与学习率语义负责;详见 容错。
容错 确立了架构师必须从一开始就把故障处理嵌入系统。检查点策略在恢复粒度与开销之间进行权衡。弹性训练5 会随集群成员变化动态调整,优雅降级则在容量下降时维持服务质量。把故障视为异常的系统无法在生产部署中存活。
通信与故障共同构成分布式系统的运行现实,即集群栈的中间层。二者都依赖于其下方的物理基础,这也使基础设施成为第三条原则。计算基础设施 表明,基础设施决定哪些工作负载可行,而不只是它们运行得多快。集群级二分带宽与芯片级功率密度为集群能够训练的全部模型与批处理大小设定硬性上限,与训练算法如何调优无关。
内存墙 使这一原则具体化:虽然计算能力(TFLOP/s)可能充裕,但内存带宽(GB/s)仍是自回归解码 的瓶颈约束。在大规模下运行推理 与 Sustainable AI 量化了无法将数据以足够快的速度从高带宽存储器(HBM)传输到处理器,从而使自回归生成本质上低效。掌握集群要求理解这些物理上限,从芯片级热密度到集群级二分带宽。一旦基础设施决定了系统能够做什么,治理便决定系统被允许做什么。
第四条原则是负责任的工程实践。责任人工智能 将 AI 风险管理框架转化为工程约束 (Tabassi 2023年)。奖励黑客、分布偏移和可扩展监督等安全相关风险说明了为何这些约束需要具体的实现机制 (Amodei 等 2016年)。公平性、透明性、问责性、隐私和安全都是首要需求,在整个机器学习生命周期中塑造着系统架构。
公平性不可能定律 (责任人工智能) 说明了为何这是系统约束而非调参问题:当各群体的基础发生率不同时,除非预测完全准确,否则任何模型都无法同时满足校准性与错误率平衡 (Kleinberg 等 2017年; Chouldechova 2017年),因此工程师必须选择优先满足的准则,并构建监控机制以持续维持该准则。工程师必须从设计之初就考虑公平性,通过监控基础设施检测不同人口群体中的公平性退化。从偏见检测到可解释性机制,负责任 AI 的工程方法与性能优化同等重要。环境责任则将这一治理层延伸至物理资源预算。
第五条原则是可持续性。Sustainable AI 揭示了大规模机器学习的环境影响如何使资源效率成为首要工程约束 (Strubell 等 2019年; Patterson 等 2021年)。AI 的杰文斯悖论将杰文斯关于资源效率的论证应用于 AI,解释了为何仅靠硬件效率提升无法消除电力与碳排放成本:计算成本下降会扩大部署规模,因此,除非用绝对碳排放预算约束集群,否则单次查询的节省会被使用量增长抵消 (Jevons 1865年)。
可持续性由此从环境关切转变为工程学科。能源成本可能超过模型开发预算,热约束会限制硬件密度,电力基础设施要求则会限制部署地点。在传统性能指标之外,碳感知调度、生命周期评价、6效率优化也成为必备的工程能力。前五条原则共同指向最后一条洞见:规模会改变系统本身的行为。
6 生命周期评价: Sustainable AI 评估系统整个生命周期内的环境影响,包括硬件制造产生的隐含碳排放。在使用清洁电网或硬件利用率较低的情况下,隐含排放可能占总环境影响的很大一部分。
第六条原则指出,在较小规模下运行的系统,在生产规模下会表现出根本不同的行为。在 8 个 GPU 上运行的训练任务,扩展到 8,000 个 GPU 时,可能遭遇在较小规模下未曾显现的通信瓶颈、负载不均衡或同步开销。拥有 100,000 个并发用户会话的服务,每天很容易产生数百万次请求机会,因此,即使是百万分之一概率的边缘情况,在生产流量下也可能每天出现。
规模使分布式机器学习需要根本不同的工程方法。优化单机性能的技术虽然必要,却不足以应对这种规模。新的现象随之出现:拖慢集群的慢节点7、使训练系统分裂的网络分区,以及使负载均衡更加复杂的不同代际硬件之间的异构性。
7 慢节点: 在一个以同步屏障为主导的示例步骤中,假设各工作节点的工作量相同,单个工作节点以其他节点速度的 80 percent 运行,就会使集群吞吐量降低 20 percent。更全面的慢节点及其缓解措施分析见 容错。
完整的生产系统
考虑原型 A:一个前沿语言模型,例如 GPT-4 级或 Llama 3 级系统,在数千个加速器上训练后,部署到全球模型服务集群。模型首先带来存储问题:检查点的突发写入必须顺利完成,同时不能挤占数据加载器所需的资源。随后,存储与网络压力会影响训练循环,因为集合通信必须及时完成,避免集群在下一个优化器步骤前陷入空闲。在这一规模下,故障是预期事件,因此必须根据观测到的故障率,遵循 Young-Daly 检查点定律确定检查点频率 (Young 1974年; Daly 2006年)。模型上线后,模型服务的服务级别目标(SLOs)必须为回滚和回退预留余量,治理控制机制则必须决定哪些数据、模型和输出可以到达用户。这些并非彼此独立的检查清单,而是相互耦合的速率、预算、故障暴露和策略约束。
在生产环境中,没有任何一条原则可以孤立存在。集群栈(fleet stack)将物理基础连接到运行可能性,而这些运行可能性又必须满足治理要求。每条原则都会产生贯穿整个栈的需求与约束,而这些原则之间有时相互冲突。通信优化可能需要增加故障暴露面的同步模式;可持续性约束可能限制那些本可最大化原始性能的基础设施选择;负责任的 AI 要求可能引入延迟或计算开销,从而加剧服务 SLO 与容量预算的压力。开销的转移正是这些张力通常被重新安置而非消除的原因:分布式机器学习工程的技艺,在于找到在可接受的权衡中平衡全部六项原则的设计,而非让成本消失。
生产系统始于物理容量,但容量只有在速率匹配时才真正有意义。计算基础设施 提供加速器、电力、冷却与网络互连;数据存储 决定数据能否以足够快的速率到达;集合通信 决定 worker 能否在不将网络变成瓶颈的前提下完成同步。这些子系统必须协同设计:存储带宽超过通信容量会造成资源浪费,而通信路径超过存储吞吐则会使加速器闲置。
分布式训练 随后选择与这些物理速率及预期故障模式相适配的并行化策略。数据并行、模型并行与流水线并行并非可互换的模板;每一种都会改变内存压力、通信量、检查点行为与调度器复杂度。混合策略只有在周围的存储、互连与恢复设计能够支撑该切分形态时才变得有用。
服务环节将同一套栈向外展开。在大规模下运行推理 与 性能工程 将模型能力转化为延迟、吞吐与成本目标,而 规模化机器学习运维 确保这些目标在流量与分布发生偏移时依然有意义。安全与隐私、边缘智能、Robust AI、责任人工智能 与 Sustainable AI 则加入不可延后的约束:降低延迟并不能让攻击面隐身,降低能耗并不能抹去公平性可观测性,提高吞吐并不能使恢复变得不可能。这些层次共同定义了集群栈所需的职业能力:协调规模、运行实时服务,并在不将任何一层视为独立的前提下治理后果。
本卷所追踪的三项工作负载 (三种系统架构原型) 表明,\(C^3\) 分类法中的任何单一角落都不占主导。原型与首先起约束的项 比较了各运行原型中首先起约束作用的项。
| 原型 | 首先起约束的项 | 约束成因 | 主要工程解读 |
|---|---|---|---|
| A:前沿语言模型 | 通信 | 将 GPT-4 类或 Llama 3 类模型切分到数千台加速器上,可能使梯度同步与激活传输消耗的墙钟时间超过算术计算时间 | 在增加计算之前,先审视互连、集合通信与检查点路径 |
| B:大规模推荐 | 协同 | 将多 TB 的 DLRM 嵌入表分片到数百个节点,会使稀疏特征路由、分片放置与请求调度决定全对全流量是否满足尾延迟预算 | 在修改模型之前,先审视放置、路由与调度行为 |
| C:边缘设备上的联邦 MobileNet | 计算 | 本地训练运行在瓦特量级的功率包络内,因此每一步受设备硅片而非集群级带宽约束 | 在假定云端规模补救措施之前,先审视设备功率、内存与占空比限制 |
三项工作负载适用同一套集群定律与同一组六项原则;发生变化的是哪一项首先起约束作用,工程师的任务是从工作负载中读出该项,而非主观假定。因此,收尾诊断是程序性的:
- 从观测到的症状开始:指出用户可见或运维可见的故障。
- 挂接指标:选择能够证伪该症状的测量量。
- 映射到 \(C^3\):判断是计算、通信还是协同首先起约束作用。
- 定位集群栈层次:找出负责相应干预的层次。
- 说明被转移的成本:描述所提出的修复方案将成本转移到何处。
- 保留治理证据:保留为论证该决策所需审计、安全、安全性或责任证据。
这些步骤最终汇聚为来自 端到端评估契约 的端到端评估契约:一份将候选绑定到生产等价测量的版本化发布记录、可问责的验收权威、经过测试的恢复机制,以及明确使证据失效的条件。
较低的模型 FLOPs 利用率可能指向通信或协同,而非计算不足。公平性告警可能指向标签缺失、评审能力不足或服务路径的阈值策略,而非仅模型权重。安全事件可能指向产物溯源、工具权限或回滚证据,而非网络边界故障。其纪律在于沿着约束一路追查,直至责任层次与权衡变得可见。
已掌握的胜任力
刚刚组装完成的集成生产系统将胜任力定义为约束条件下的工程判断,而非一叠技术清单。掌握意味着识别哪一层首先起约束作用、某个设计会诱发何种故障模式,以及系统随规模扩展时必须保持可见的哪一项权衡。
在物理基础层次,核心问题是哪一项基础设施限制约束了该工作负载。掌握本材料的工程师能够将加速器内存与计算能力匹配到模型,为所需速率配置存储与网络带宽,并将电力与冷却视为容量约束而非设施细节。
在分布层次,核心问题是如何使超出任何单台机器的工作负载表现得像一个协同系统。工程师可以分析通信模式、选择并行化策略,并依据部件平均无故障时间(MTBF)与集群规模推导预期故障节奏。对于大小为 \(M\) 的梯度,Ring AllReduce 在带宽项下随集群规模增长,每个 worker 约传输 \(2M\) 字节;在 Llama 3 类集群规模下,Meta 报告每数小时出现一次意外中断 (Dubey 等 2024年)。权衡存在于并行加速、通信成本与恢复开销之间。
在部署层次,核心问题是在实时流量与偏移分布下,训练好的模型如何持续提供-serving 价值。工程师可以预算服务开销,选择批处理与放置策略,并监控系统性能与语义漂移,使一个可用的模型不会退化为低效或过期的服务。
在负责任集群层次,核心问题是谁承担系统决策的成本与风险。工程师可以将安全、隐私、公平性、鲁棒性与可持续性义务转化为控制与证据:访问边界、隐私预算、子群体评估、对抗性与分布外测试、事件处置程序与资源核算。这些能力将系统工程与模型开发区分开来,因为它们把社会、安全与环境后果纳入运行路径。
尾声:集群栈作为纪律
这些胜任力之所以重要,是因为起约束作用的项会持续移动。掌握某一系统代际并不足够;工程师必须识别当新的扩展形态改变设计单位时机的时刻。更大的模型会撞上系统极限:网络互连约束同步,内存系统约束状态驻留,能源基础设施约束集群增长,而治理约束可部署什么。组合是其中一个自然的压力点,因为模型、工具、检索与验证的系统协同了许多专门能力,而非仅仅放大单一模型。系统层面的洞见并非一项新的能力定律,而是同一套集群栈纪律在新边界上的应用。当有用工作跨越多个组件时,工程师必须将编排开销、状态迁移、故障传播、延迟预算与治理证据作为系统本身的一部分来度量。正如 从模型服务到闭环智能体集群 所示,这一转变重新定义了优化目标:经典集群服务优化开环前向传递的微效率(每 token 的 FLOPs 与每 token 的焦耳),而新兴智能体工作负载要求在完整闭环上追求宏效率,以每完成一项有用任务所消耗的焦耳来衡量。
:::
:::
同样的一点,可以表述为一个简单的集群栈(fleet-stack)账目问题。该计算先假定一个目标 100× 效率提升,然后将其中一部分归因于硬件与算法压缩;残差项则是集群必须提供的编排改进。
Napkin Math 1.1: 集群栈效率账目
数学: 系统总收益是集群栈各层改进的乘积。
- 硬件(物理):本场景中为 4×。
- 算法(数学):来自与工作负载兼容的稀疏化或蒸馏,贡献 2.5×。
- 编排(系统):100× / \((4.0 \times 2.5)\) = 10×。
系统洞见:由于硅基器件与数学方法都可能面临收益递减,激进的 100× 效率目标不能只依赖其中一层。此处的效率指的是每单位集群资源预算所取得的有用任务进展,而不只是原始 FLOP/s。在这个示例场景中,剩余的 10× 来自系统编排:减少重复工作、将请求路由至合适的组件、复用缓存状态、将通信与计算重叠,并在不耗尽延迟预算的前提下验证输出。能力并不只存在于模型权重中,也存在于集群逻辑之中。
在集群栈框架下,能力源于通过 MLOps 流水线(在 规模化机器学习运维 中建立的)协同的专用组件。编排层 充当控制平面,在延迟、成本与故障预算约束下调度模型调用、检索、工具执行与验证,这与 集群编排 所研究的集群编排相呼应。
这些编排收益仍然运行在物理互连结构之上。一旦软件已经减少了冗余模型调用、重复检索和可避免的协同开销,剩下的前沿问题便是承载集群中令牌、激活与功耗传输的底层介质。因此,集群栈这一视角同样适用于超越传统晶体管扩展的研究与部署候选方向。诸如光互连、共封装光器件、三维集成、类脑事件驱动底层、自动架构搜索以及面向系统的 AI 优化等技术,可能通过降低每比特能耗、缩短通信路径、提高带宽密度,或将内存更靠近计算单元,从而改变集群的物理特性。结论并非某种底层介质必然胜出;持久的要求依然不变:带宽优化、容错与负责任的治理,即使底层介质发生变化也必须得到满足。
跨数千台加速器的 Transformer 模型会通过多种机制产生通信压力。张量并行通过被切分的张量上的频繁集合通信(collectives)产生压力,而混合专家(MoE)路由则在 MoE 层使用全对全(all-to-all)调度。在该规模下,链路能耗会随集合通信流量规模累积,这使得更低能耗的互连结构成为一个合理的互连效率杠杆。这种扩展压力并非普遍存在,它直接源于集合通信模式。
Napkin Math 1.2: 更好的互连结构的物理
数学: 一次通信效率跃迁,是将互连结构的一部分从电信号改为光信号。
- 电成本:10 pJ/bit。
- 光 I/O 场景:5 pJ/bit。
- 效率增益:2×。
系统洞见:继续以“更多同类做法”扩展最终会撞上能量墙。这堵墙由集合操作的规模与频率驱动:用于梯度同步的 AllReduce 与用于 MoE 层的全对全调度,都会随模型与集群规模增长。要突破这堵墙,就必须改变通信的物理机制。光 I/O 是一个有意义的互连效率杠杆,但本场景仅体现个位数的能耗改善,而非整个互连结构量级的降低。在机器学习集群中,数据局部性 与互连效率 是热力学层面的要求,而非可选项的优化。
这些互连层面的限制引出了最后一次效率合理性检验:将一台机器集群与一个刻意简化的脑场景进行比较。该比较并非关于生物性能的论断;它检验的是效率结论在多大程度上依赖于为各系统所选取的操作与功耗假设。
工程智能规模化
大规模机器学习基础设施的规模,使得与一个假设的生物基线进行比较成为可能。一个费米估算 可以在不将机器 FLOP/s 与突触活动视为等价的前提下,揭示此类比较的边界。下表中的数值是为量级推理而选取的场景输入,并非实测常数,也不是智能的模型。
Napkin Math 1.3: 智能的费米估算
假设:
- 机器集群:参考大规模集群场景中 25,000 台 H100 GPU。
- 机器 FLOP/s:\(25,000 \times \text{H100 FP16 tensor peak}\) \(\approx\) \(2.47 \times 10^{19}\) FLOP/s(取整值;H100 FP16 张量峰值为 989 TFLOP/s)。
- 机器功耗:\(25,000 \times 700 \text{ W}\) \(\approx\) 17.5 MW。
- 脑突触:假设 \(10^{14}\) 个突触(连接)。
- 脑发放率:假设本场景的集群平均发放率为 1 1/s;真实活动因神经元类型、区域与时间而异。
- 脑突触操作速率:在上述假设下,\(10^{14} \times 1\text{ Hz}\) = \(1.0 \times 10^{14}\) 个突触操作/s。
数学:
机器与脑之间的原始操作速率之比是:
\[ \frac{\text{machine peak FLOP/s}}{\text{brain synaptic ops/s}} \approx 247,250× \]
系统洞见:该比较仅可作为警示使用,而非等价性论断。机器的 FLOP/s 几乎全部是 Transformer 架构所要求的通用矩阵乘法(GEMM):结构刚性、同步执行,并在数千台加速器之间紧密协同。生物突触操作则是稀疏的、事件驱动的、大规模去中心化的,不存在全局屏障或梯度步的对应物。吞吐率之比衡量的是原始算术运算量,而非智能;这两种操作类型之间的架构差异,与数值差异同样重要;任何关于 \(20 \text{ W}\) 脑与 17.5 MW 集群之间的效率比较,都取决于所采用的脑操作模型。
费米估算的价值恰恰在于,它拒绝在 FLOP/s 与智能之间建立简单的等价关系。集群栈框架已经确立了规模化的工程原则;持续的挑战在于效率,即在这些原则约束下,于进一步增长所面临的能源、碳与经济性边界内应用它们。
集群栈为将智能作为系统来工程化提供了专业框架:基础设施驱动集群,分布式协议协调跨越数千台设备的工作,服务系统向用户交付智能,治理要求则使集群与安全性、可持续性、问责制以及明确的人类影响约束保持一致。大规模智能系统需要理解这些原则、并能在约束条件下加以应用的工程师。因此,议程是三重:可扩展的系统、可持久运行的系统,以及将社会与环境义务工程化进运行路径的系统。
谬误与陷阱
收尾的三条错误都源于优化了错误的设计单位。模型可以变好,而集群却变得更慢、更不可靠、更昂贵,或更难治理。
谬误:更快的模型自动就是更好的系统。
原始模型速度确实重要,但它只是集群方程中的一个项。一个降低内核时间、却增加检查点压力、网络拥塞、服务方差或治理风险的设计,可能使整个系统更差。系统层面的问题是:该改动是否在实际约束下改善了有效吞吐量——即数据移动、同步、故障恢复、功耗、延迟和问责制。
陷阱:优化某一层,却把其所产生的约束隐藏到另一层。
当局部改进把成本转移到无人测量的层时,它便变得危险。更大的批处理规模可能提高加速器利用率,却恶化尾部延迟。激进的压缩可能降低通信开销,却增加准确性风险。碳感知调度可能降低排放,却要求服务预算中留出更多余量。良好的工程实践尊重开销的转移,保持被转移的约束可见,使系统能够主动取舍,而不是继承一个隐藏的瓶颈。
谬误:集群规模的经验依附于当前的硬件与软件栈。
具体的处理器、框架和服务引擎都会变化,但持久的关系依然存在。数据必须以所需速率到达计算资源。工作节点必须在同步使作业停滞之前完成通信。在大规模组件数量下,必须预期故障发生。服务系统必须满足尾部延迟预算,而治理约束必须被工程化进运行路径。技术名称只是示例;速率、故障与问责制之间的关系才是经验教训。
陷阱:把治理与可持续性当作外部评审,而非系统约束。
安全性、公平性、隐私和碳核算往往被推迟,因为它们看起来不如吞吐量或准确性紧迫。在集群规模下,这种推迟会形成架构债务。部署后再加装审计轨迹、人口统计监测、访问控制、删除工作流或碳感知放置,比在设计与服务路径、数据管线和调度器设计之初就为其预留预算更昂贵。
摘要
在集群规模下,核心的工程对象不再是一个孤立的模型、加速器或服务端点。它是耦合的系统:移动数据、调度工作、在故障中存活、服务用户,并在真实的物理与组织约束下满足治理义务。同一方法贯穿全书:识别约束性约束,量化其所施加的成本,并设计运行路径,使该约束保持可见,而不是被转移到另一层。
Key Takeaways: 可扩展、可持久、可服务
- 集群是对象:全书的六条原则归结为一个习惯——在基础设施、通信、协同、服务与治理层面,沿着约束性约束跟进。集群,而非任何单个模型或组件,是构建、测量与优化的单位。
- 规模改变概率模型:在 99 百分位处,触碰 100 servers 会带来 63.4 percent 的概率出现慢服务器,而 Llama 3 曾观察到 419 unexpected interruptions 的 54 days。集群行为并非单节点行为的简单重复。
- 编排成为能力:示例中的 100× 效率目标无法仅靠芯片或算法实现;在 4× 硬件与 2.5× 算法收益之后,剩余的 10× 必须来自路由、复用、重叠与验证。
- 义务属于路径:安全性、隐私、公平性、碳、可访问性与可审计性是生产约束,而非外部评审。纪律在于在规模使取舍不可逆之前,将其设计进数据管线、调度器、服务路径与运行规程。
What’s Next: 机器学习系统的纪律
Prof. Vijay Janapa Reddi, Harvard University
