集群原理
机器学习集群是仓库级计算机:网络即总线,功率密度即速度上限,故障则是统计意义上的必然。延续课程对 AI 工程物理的关注,Part I 构建了规模物理:使分布式机器学习成为可能的硅片、导线、冷却系统与存储层级。关注点从单个加速器转移到数据中心级机器,此处的工程问题不再是如何在单设备上计算,而是如何在挑战物理基础设施极限的规模上移动能量与信息。
这一转变需要根本性的视角转变。在规模层面,单个 GPU 只是更大、紧密耦合系统中的组成部分。集群原理并非集群管理的最佳实践;它们是物理不变量,规定可以训练何种模型以及如何为其提供服务。从散热热力学极限到网络互连结构的双分带宽,这些约束定义了集群栈的边界。其主导模式与单节点平行:节点受数据—算法—机器(Data, Algorithm, Machine)之间复杂度守恒的约束,而集群受 Compute、Communication 与 Coordination(即 C³ 分类法)之间开销转移的约束。规模的执行开销无法消除,只能转移。
这些边界首先体现在设施本身:每一项操作最终都会变成必须被移除的热量。
Principle 1: 热力学极限
含义:机架只有在散热输出保持在已安装冷却系统的能力范围内时才能运行。随着机架功率密度上升,设施可能需要降低机架密度、加强风冷,或采用液冷,以将该散热移除控制在特定配置的限制内。
在机架层面,同一热预算成为密度约束。
Principle 2: 功率密度墙
含义:现代 AI 加速器产生的热密度已超过风冷能力。对于大规模训练集群,液冷成为设施必需项,而非可选项。
热容量设定了外部包络;在其内部,内存容量决定了前沿模型必须如何切分。
Principle 3: 内存容量缺口
含义:模型已无法装入单台设备。架构必须接纳 3D 并行(通过张量并行与流水线并行对模型本身进行切分)作为默认状态,打破“单设备”这一抽象。
一旦模型被切分到多个设备上,网络便成为执行路径的一部分。
Principle 4: 双分带宽定理
含义:同步训练需要与集合通信操作(如 AllReduce)在互连结构上发送的流量相匹配的双分带宽。胖树可被配置为非阻塞网络,而 Dragonfly 网络则以较少的全局链路换取随工作负载变化的拥塞,路由与放置必须加以管理。
集群还决定了通用灵活性与硬件专用化之间的平衡。
Principle 5: 通用性税
含义:从 CPU 到 GPU 到张量处理单元(TPU)再到固定功能 ASIC 的发展轨迹,是随工作负载变化的架构权衡,而非普遍适用的物理定律。每一步都可能以可编程性换取效率,而集群架构师必须为每种工作负载在这条曲线上选择合适的位置。
计算效率只有在训练流水线能够持续喂饱加速器时才真正有用。
Principle 6: I/O 墙
含义:原本对 8 个 GPU 而言尚属充足的存储系统,在 64 个 GPU 时便成为瓶颈。I/O 墙随加速器数量增长:每向集群增加一个 GPU,存储必须维持的吞吐下限就提高一分,使数据流水线而非模型本身成为限制因素。
满足这一需求需要层级结构,而非单一不分层级的存储池。
Principle 7: 存储层级原则
含义:系统工程师的任务是确保正确的数据在正确的时间位于正确的层级。数据格式选择、缓存策略、预取缓冲大小与分层策略,都是为了管理数据沿层级向上移动,使加速器不至于饿死。
即使数据已到达正确层级,协同仍限制着更多节点能转化为多少吞吐。
Principle 8: 扩展效率界
含义:理想的线性基线是完全线性扩展(\(\eta_{\text{scaling}} = 1.0\)),而非实际可达目标。在现代互连结构上,调优良好的稠密训练任务在中度规模下通常可达 \(\eta_{\text{scaling}} \approx 0.85\)–\(0.95\),并随 \(N\) 增长而进一步下降。\(\eta_{\text{scaling}} = 1.0\) 与实际效率之间的差距即通信开销——协同的代价。
这些不变量确立了集群为一等工程对象。Part I 自下而上构建这台机器:从分布式 ML 系统的格局与单机器为何已不足够,到 AI 数据中心的硅片、供电与冷却系统,连接集群的网络互连结构,以及为训练流水线供料的存储层级。这些章节共同构成了贯穿本书的灯塔原型(三种系统架构原型)的基础。