简介:本教程面向智算中心建设与运维团队,讲解如何从零规划并交付一套万卡级GPU集群:涵盖选址与供配电散热规划、高速网络与分层存储组网、拓扑感知调度与多租户计量、基准验证、故障排查及能效与成本优化。读完可掌握"怎么建、怎么配、怎么验、怎么排障"的完整路径,并理解如何以对外算力服务方式逐步收回投入。
某超大型智算中心一期在 2024 年投产,规模约为 23 万枚图形处理器,与规划中的二期共用同一站址,并通过向外部企业客户出租算力来摊销巨额投入。本教程把这类项目的工程实践抽象成一条可复用的实施路径,最终交付目标是:
如果你的目标只是在公有云上申请几台带加速卡的实例跑通一个脚本,本教程的复杂度远超需求;若你使用的是托管型容器平台或托管训练服务,可将本文中的组网、存储、调度章节视为原理与验收参考,具体的开通与配额操作以对应平台的通用功能页面说明为准。
万卡级集群的本质是一个高功率密度、高网络复杂度、高故障率的联合系统。开工前必须确认:
做什么:以目标模型规模和训练时长反推所需的加速卡总量、聚合算力、聚合通信带宽、检查点存储容量与写入带宽,再折算成机柜数、网络层数、电力与制冷需求。
为什么:分期建设是控制风险的核心手段。一次性建设十万卡会造成供电、网络、运维能力的三重瓶颈叠加;正确做法是按”最小可交付训练单元”切分。
注意:预留 15%~25% 的容量余量用于故障替换与灰度升级,不要用满所有机柜位。
做什么:设计面向集合通信的低时延、无损网络。常见做法是采用多级无阻塞胖树/折叠式拓扑 + 轨道优化(多轨)组网:每台服务器上的第 N 号加速卡统一接入第 N 个网络平面,使同轨通信路径最短。
为什么:大模型训练的主要开销来自集合通信(All-Reduce、All-Gather、Reduce-Scatter)。若随机接线,通信流量会跨多层级转发,带宽利用率与尾延迟都会显著恶化,直接表现为训练吞吐下降。
注意:
做什么:建立”三层存储”——高速并行文件系统(读写训练数据与检查点)、大容量对象存储(数据集归档、模型产物、日志)、本地 NVMe 缓存(数据预取与暂存)。
为什么:训练任务的等待时间往往不花在计算上,而花在数据读取和检查点写入上。检查点是大流量、周期性、并发写,若写入带宽不足,会导致长时间”空转等待”。
注意:按”聚合写入带宽 ≥ 目标检查点体积 / 可接受停顿时间”来反推存储规格;开启检查点分片与异步落盘,把写盘时间从关键路径上摘除。
做什么:部署容器编排与批调度能力,配置队列、配额、优先级、抢占与拓扑感知调度。
关键配置项语义(业界通用,非特定产品专有参数):
示意性作业描述(字段为通用语义,非任何产品专有格式):
job:name: pretrain-demoqueue: tenant-a-highpriority: highresources:accelerators: 512 # 所需加速卡总数cpus: 2048memory_gb: 4096schedule:gang: true # 成组调度,避免资源部分占用min_members: 512topology_aware: true # 优先同网络平面/同机柜分配max_restarts: 3network:fabric: rdmarail_aligned: truestorage:- mount: /ckptclass: parallel-fs # 高吞吐并行文件系统quota_tb: 100- mount: /dataclass: object-cacheruntime:backend: containerimage: registry.internal/training-runtime:<pinned-tag>tenancy:namespace: tenant-agpu_quota: 1024observability:metrics: scrapelogs: centralizedalert_on: [xpu_temp, ecc_error, fabric_crc, step_time_p99]
做什么:为对外算力服务建立网络隔离(独立 VPC/子网 + 安全组)、身份认证与最小权限授权、镜像来源可信与签名校验、密钥与凭据集中托管、租户级资源配额与用量计量。
为什么:一旦集群对外开放,安全边界就从”内部网络”变为”多租户边界”。训练框架常以高权限方式访问设备与本地文件系统,隔离不足会导致跨租户数据泄露或资源挤占。
注意:默认拒绝跨租户通信;对镜像仓库、模型仓库等制品源做准入控制;审计日志留存周期与合规要求对齐。
做什么:定义计量口径(加速卡·小时、显存·小时、存储 GB·月、网络流量)、采集间隔、结算粒度;定义服务等级(可用性、故障响应、赔偿);提供配额自助申请与用量报表。
为什么:以出租算力摊销投入是这类超大规模中心的主要回收方式,计量不准确的代价是直接的收入损失与商务纠纷。
注意:计量数据要与调度器的资源占用记录、监控指标三方对齐并定期对账;计费规则变更需保留历史版本可追溯。
不要以”任务能提交”作为验收标准。建议执行以下基线测试并留存报告:
任一项不达标都不应放行至生产租户。
| 现象 | 常见原因 | 排查思路 |
|---|---|---|
| 整体训练吞吐低于预期,且波动大 | 无损网络未生效导致丢包重传;存在慢节点 | 先比对通信基准与基线报告;用性能指标定位单卡/单机离群点,隔离后复测 |
| 扩展效率随卡数上升快速下降 | 跨层级通信占比过高;轨道未对齐;并行策略不匹配 | 检查资源分配的拓扑分布;调整张量并行/流水并行/数据并行的切分比例 |
| 任务长时间处于”资源不足”等待 | 未启用成组调度;配额被零散占用 | 检查碎片化程度,启用成组调度与队列优先级,必要时回收闲置配额 |
| 检查点阶段长时间停顿 | 存储写带宽不足;未做异步落盘 | 测量聚合写带宽,启用分片写入与异步/分级落盘 |
| 周期性 GPU 温度或频率异常 | 进风温度过高、局部热点、风道堵塞 | 结合机房热分布调整送风与机柜布局,检查液冷流量与滤网 |
| 训练脚本单机能跑、多机失败 | 环境变量、网络平面、镜像版本不一致 | 用统一基线镜像与配置管理消除节点漂移,先跑小规模通信自检 |
| 租户间相互干扰或越权访问 | 隔离边界缺失、权限过宽 | 复核网络隔离策略与最小权限授权,补齐镜像准入与密钥托管 |
| 临时发电设备引发投诉或被要求整改 | 噪声/排放未达许可要求 | 加装消声隔声与尾气处理、调整布置与运行时段、建立噪声监测与公示、尽快推进市电并网以减少临时发电依赖 |
排障通用原则:先分层定位(应用→调度→存储→网络→硬件→机房环境),再用基线对比确认异常点,最后单点隔离复测。永远不要在没有基线的集群上”凭感觉调参”。
超大规模 GPU 集群的难点不在于堆卡,而在于供电与制冷的分期节奏、网络拓扑的确定性、存储带宽与检查点路径、调度的成组与拓扑感知、多租户的隔离与计量这五件事能否同时成立。本文给出的路径是:容量规划 → 网络组网 → 存储分层 → 调度与多租户 → 安全基线 → 计量服务化 → 基线验收 → 运维排障与优化。后续可继续深入的方向包括:面向超长上下文的并行策略优化、检查点与恢复的进一步加速、故障预测与自动化运维、液冷能效调优,以及算力资源的跨中心调度与统一编排。