准备自建训练环境时最容易踩的坑,是先盯着一张卡看性能,最后发现瓶颈在网络、存储或供电上。这篇不讲具体型号和数字,而是把训练要用到的硬件按「算力、互联、存储、供电散热、配套」分层列清,告诉你每一层该核对哪些参数、什么规模下可以省掉哪一层,以及到哪里查当时的规格和租金。
准备自建训练环境时最容易踩的坑,是先盯着一张卡看性能,最后发现瓶颈在网络、存储或供电上。硬件采购不是挑最贵的部件,而是让五类角色互相匹配:算力卡、互联、内存与本地盘、数据存储、供电散热。缺哪一类,都会在训练跑到中途才暴露,返工成本远高于前期多列一张表。
这篇不讲具体型号和数字,而是按角色拆清单,告诉你每一层该核对哪些参数、什么规模下可以省掉哪一层,以及到哪里查当时的规格和租金。基础模型的训练需要哪些硬件设施的支持,本质上是一个「先定目标、再倒推配置」的问题,而不是先把预算花完再看能训多大的模型。
先按角色拆:训练一台机器里到底有几类硬件
把训练硬件想成一条流水线,而不是一张卡的独角戏。流水线上任何一环速度不够,整条线都会等它。技术负责人在做预算表时,最好按角色分行填写,每一行标注「必须」还是「可后补」,这样砍预算时有据可依,不会砍掉关键项。
- 算力卡
- 承担矩阵运算的加速部件,显存容量和精度支持决定能装下多大的模型分片
- 卡间互联
- 同一台机器内多卡交换梯度与激活的通道,决定张量并行能不能跑起来
- 机间互联
- 多台机器组成集群时的网络,带宽与拓扑决定多机训练的扩展效率
- 内存与本地盘
- 做数据预处理、缓存和写检查点用,容量不够会直接中断训练
- 数据存储
- 长期存放训练语料与检查点,要求读得够快、存得够久
- 供电与散热
- 按满载功耗估算,预留不足会出现降频甚至跳闸
判断顺序上,先算显存和互联,再算卡数。模型参数量、精度和并行策略决定单卡显存需求,并行策略又反过来决定互联带宽要求。顺序反了,很容易买到显存够但互联弱的卡,训练时通信等得比计算还久。硬件名词看不懂时,先去 硬件词条(/ai-dict/category/hardware) 和 基础设施词条(/ai-dict/category/infra) 对照一遍再谈选型。
算力卡:显存、精度支持、互联三件事按顺序看
看卡的顺序建议固定下来:先看显存容量和显存带宽,这决定能装下多大的模型分片;再看支持的精度类型,训练常用高精度与半精度混合;最后看卡间互联能力。三步都过了,再谈单卡算力,否则容易买到「单卡跑分好看、多卡跑不动」的组合。
- 单机多卡要确认卡间互联走专用高速通道还是普通总线,走总线在张量并行下会被通信拖住,这是最常见的隐性瓶颈
- 消费级卡和专业卡的差别不只在算力,还在驱动、ECC 内存、多卡扩展和长时间满载稳定性
- 打算多机训练时,卡型要和网络方案一起选,别等卡到货才发现交换机端口数和拓扑对不上
- 什么情况下不适用:只做小规模微调或实验性训练时,不必上高速互联,先按单卡性价比走
规格本身会随时间变化,不要在方案里写死型号。到 算力卡资料库(/compute/gpus) 核对当时的显存、精度支持与互联参数,再结合 供货情况页(/compute/availability) 判断能不能按时拿到货。这两个页面也能帮你在几个候选方案之间做横向对照。
互联、存储与内存:最容易在预算里被忘掉的三块
互联分两层:机内互联决定单机能扩到几张卡,机间互联决定能不能组集群。只买单机不买网络,等于把扩展性提前锁死。打算多机训练,就必须把网络交换设备和拓扑一起列进采购单,而不是等卡装好再补。
| 部件 | 核对什么 | 常见漏项 |
|---|---|---|
| 机内互联 | 是否走专用高速通道、支持几张卡互联 | 按卡数上限估算,不留余量 |
| 机间网络 | 带宽、拓扑、交换机端口数 | 只算卡钱不算网络钱 |
| 训练数据存储 | 热数据读取吞吐、冷数据归档成本 | 把冷热数据放同一层,拖慢加载 |
| 主机内存 | 数据预处理与缓存配比 | 按卡数配比估算不足 |
| 本地盘 | 检查点写入空间与速度 | 检查点写不下直接中断训练 |
| 供电散热 | 按满载功耗算电力与制冷余量 | 按标称单卡功耗估算,部署当天限频 |
数据存储按「读得够快 + 存得够久」两条线选:热数据放高速本地盘或并行文件系统,冷数据放对象存储。本地盘还要留出检查点写入空间,这一项在故障恢复时尤其关键。供电与散热按满载算,多卡满载功耗远高于标称单卡功耗,机房电力和散热没提前算,部署当天就会降频。
按规模配资源的判断顺序:从目标倒推,而不是从预算倒推
从预算倒推配置,常见结果是买了一堆卡但训练目标定不下来。正确的顺序是四步:定目标、定并行策略、定买还是租、最后选具体卡型。每一步都留下书面判断依据,后面复盘时知道哪一步估错了。
- 第一步 定目标分清是从零预训练、继续预训练还是只做微调,三者对卡数、互联和存储的要求差一个量级;到 训练指南(/training) 和 容量测算页(/compute/sizing) 看当时的判断口径
- 第二步 定并行策略数据并行、张量并行、流水线并行的组合决定卡数与互联带宽下限,卡数不是越多越好,通信开销会吃掉收益
- 第三步 定买还是租短期项目优先租卡验证,长期稳定负载再算三年账,持有成本页(/compute/tco) 和 算力平台对比(/compute/platforms) 可以对齐当时的计费口径
- 第四步 选具体卡型到 算力卡资料库(/compute/gpus) 看规格,到 算力价格指数(/compute/price-index) 看租金水位,不要凭印象拍板
什么情况下不适用:如果训练任务是一次性的、周期短于硬件回本周期,租比买更合适;如果团队没有运维能力,长期自建集群的隐性成本会更高,先按 自建与调用分界(/self-host) 的思路想清楚再决策。
动手前的核对清单,以及哪些环节可以省
采购前把下面这张清单过一遍,逐项写「已确认、待确认、不适用」。写不出来的项,就是还没想清楚的地方。清单不用长,但要每项都能对应到一个可验证的动作,比如查规格页、问供应商、算电费。
- 显存容量与精度支持是否匹配目标模型和并行策略
- 卡间互联类型是否支持计划的并行方式
- 机间网络带宽与拓扑是否满足多机扩展
- 数据读取吞吐能否跟上训练步速
- 检查点写入空间与恢复流程是否演练过
- 电力与散热余量、故障恢复与监控方案是否落地
可以省的环节:小规模微调可省掉机间互联和并行文件系统;单机实验可先用本地盘代替集中存储。不能省的环节:电力与散热余量、检查点空间、数据备份。推理侧需求不在本篇范围内,可另看站内推理相关页面。价格和规格始终在变,任何写死的数字都不要进方案,一律到 算力价格指数(/compute/price-index) 和 算力卡资料库(/compute/gpus) 核对当时的数字。
下一步把目标、并行策略和预算三项写成一句话,再去站内算力页面核对当时的规格与租金,能省掉大半返工。→常见问题
只做微调,是不是就不用考虑互联和存储了?
多数情况下可以简化:单机多卡微调通常不需要机间高速网络,数据放本地高速盘也能跑。但仍要留足检查点空间和主机内存,并且注意卡间互联类型会影响多卡微调的加速比。如果之后计划扩到多机,最好一开始就把网络和存储的升级路径留出来。
训练硬件一定要买吗,能不能全用租的?
短期项目、验证阶段和负载波动大的团队,租卡通常更划算,也不用管电力散热和运维。判断分界可以看负载是否长期稳定满载、数据是否必须留在内网、以及三年总成本对比。到 /compute/tco 和 /compute/platforms 按当时的口径算一遍再定。
预算有限时,先加卡还是先换更好的卡?
一般先确认单卡显存能不能装下你要训的模型分片,装不下的话加卡数量没用,得换更大显存的卡。装得下但速度慢,优先看互联和数据处理是否成为瓶颈,很多「卡不够」其实是数据加载或通信拖的。具体规格到 /compute/gpus 对照。