文章摘要
当单数据中心训练遭遇电力与冷却的物理天花板,Google DeepMind 于 2026 年 4 月发布 Decoupled DiLoCo——通过异步参数服务器、最小法定人数同步与动态 Token 加权合并,在 2–5 Gbps 的广域互联网带宽下完成跨 4 个美国区域的 12B 模型预训练,比传统同步方法快 20 倍以上,且在百万级芯片故障率下维持 88% 的有效训练吞吐。本文系统拆解 DiLoCo 的架构、通信模式、容错机制与工程权衡,并与 Pathways / LaMDA 的同步范式做定量对比。
1为什么单数据中心训练走到了尽头
2026 年,主流预训练集群的规模已经稳定在 数万到数十万加速器 的区间。Google 的 TPU v5p Pod 可容纳超过 1 万片 TPU(据 arXiv:2203.12533 LaMDA 论文,2022-01-28 发布,2023-05 修订),Meta 的 Llama 3 训练在 16K H100 上运行了数月。但当集群继续扩张时,三个物理瓶颈开始主导工程决策。
电力密度瓶颈。 单机柜功率密度从 2020 年的 10 kW 攀升到 2026 年的 120 kW 以上(液冷方案)。即使采用最先进的直接液冷(DLC),单个数据中心的总电力接入通常被限制在 100–200 MW——这是区域电网馈电、变压器容量与冷却水供应共同决定的硬上限。当训练一个 10 万亿参数模型需要 50 万片加速器时,没有任何单一数据中心能独立承载。
冷却天花板。 加速器功耗与散热呈非线性关系。TPU v5p 单片功耗约 500W,1 万片集群的总热负荷达 5 MW,需要配套的冷却塔、冷水机组和二次侧换热系统占据与计算区几乎等量的物理面积。当冷却系统达到设计极限后,继续堆叠芯片只会导致降频(throttling),有效算力反而下降。
同步墙(Synchronization Wall)。 传统 SPMD(Single Program Multiple Data)范式要求所有加速器在每个梯度同步步保持锁步(lock-step)。当集群规模从 1K 扩展到 100K 时,最慢的一片加速器决定了整个集群的速度——这就是 straggler 问题。据 Google DeepMind 在 2026 年 4 月发布的 Decoupled DiLoCo 技术报告(2026-04-23),在百万级芯片的模拟环境中,传统同步方法在硬件故障率上升时,有效训练吞吐(goodput)呈断崖式下跌。
这三个瓶颈共同指向一个结论:继续在单一数据中心内堆叠芯片的边际收益已经趋近于零。必须把训练负载分散到多个数据中心,用地理空间换取算力规模——但前提是有一种训练范式能容忍跨数据中心的高延迟、低带宽和高故障率。Decoupled DiLoCo 正是为此而生。
💡 一句话理解
单数据中心训练的瓶颈不是芯片本身,而是电力、冷却与同步延迟三者的乘积效应。当其中任一达到上限,扩展就只能走向分布式。
⚠️ 常见踩坑
不要将'跨数据中心训练'与'多机多卡训练'混淆。后者仍假设数据中心内的高速互联(如 NVLink/ICI),前者必须容忍广域网(WAN)级别的延迟(毫秒级)和带宽(Gbps 级)。
2DiLoCo 的核心架构:解耦本地训练与异步全局同步
DiLoCo 的全称是 Decoupled Local Training ,其核心思想可以用一句话概括: 让每个数据中心在自己的节奏上做本地训练,只周期性地与全局同步参数更新,且同步过程容忍部分参与者缺席 。
这一架构由三个关键组件构成。
本地学习者(Local Learner)。 每个数据中心部署一组加速器,运行完整的模型副本,并在本地数据集上执行若干步(inner steps)优化。这些本地步数通常为 50–500 步 ,期间完全不需要与其他数据中心通信。这是 DiLoCo 与传统数据并行的根本区别——传统方法每步都需要同步梯度,DiLoCo 把同步频率降低了 2 个数量级。
中央同步器(Central Synchronizer)。 一个独立的服务端(或一组冗余副本),负责接收来自各学习者的参数更新(delta),并将其聚合为全局模型的新状态。同步器不持有训练数据,也不执行前向/反向计算——它的唯一工作是 聚合与广播 。
异步通信协议。 学习者完成本地步数后,将参数更新(而非原始梯度)压缩并发送到同步器。同步器不等待所有学习者到齐,而是采用 最小法定人数(Minimum Quorum)+ 自适应宽限窗口(Adaptive Grace Window) 的策略:只要收到足够数量的更新,就立即聚合;对于迟到的学习者,在宽限窗口内仍可纳入,超时则丢弃其更新。
这种设计的精妙之处在于: 通信被隐藏到了计算的间隙中 。当学习者在执行本地步数时,上一轮的参数更新正在同步器处聚合;当学习者完成本地步数准备发送更新时,同步器已经在处理其他学习者的更新。两者在时间上重叠,而非串行。
据 Google DeepMind 官方博客(2026-04-23),这种架构在真实跨数据中心实验中实现了 20 倍以上的加速 ——不是因为计算更快,而是因为 消除了阻塞等待 。
# DiLoCo 跨数据中心训练配置(概念性,基于 DeepMind 技术报告)
# 实际部署需配合 JAX/Pathways 运行时
global_config:
model_size: 12B # 目标模型参数量
total_learners: 4 # 跨 4 个数据中心的本地学习者
inner_steps: 200 # 每轮本地训练步数(关键超参)
outer_sync_frequency: 200 # 每 200 步本地步触发一次全局同步
compress_before_send: true # 发送前压缩更新(1-bit SGD 或 top-k 稀疏)
synchronizer:
endpoint: "synchronizer.global.internal:9090"
quorum_size: 3 # 最小法定人数:至少 3/4 学习者到达
grace_window_seconds: 30 # 宽限窗口:迟到 30 秒内仍纳入聚合
merge_strategy: "token_weighted" # 动态 Token 加权合并
fallback: "skip_straggler" # 超时学习者本轮跳过
learner_0:
region: "us-central1"
accelerator: "tpu-v5p"
chips: 2560
batch_size_per_chip: 512
local_optimizer: "adamw"
local_lr: 1e-4
momentum_beta: 0.9 # 本地动量缓冲(DiLoCo 关键)
learner_1:
region: "us-east1"
accelerator: "tpu-v6e" # 混合硬件代际
chips: 1920
# ... 其余配置同 learner_0
# 网络约束
network:
wan_bandwidth_gbps: 5 # 广域网带宽(2-5 Gbps 实测)
wan_latency_ms: 50 # 跨区域 RTT
compression_ratio: 100 # 更新压缩比(1-bit SGD 典型值)3通信模式:为什么 DiLoCo 只需 2–5 Gbps
传统数据并行(如 PyTorch DDP、Megatron-LM)的通信量与批次大小 × 模型参数量成正比。对于一个 12B 参数模型,每步同步需要传输约 48 GB 的梯度(假设 FP32)或 24 GB(BF16)。当集群有 1 万片加速器时,即使使用 All-Reduce 的分层优化,总通信量仍然达到 数百 GB/步,必须依赖数据中心内的高速互联(如 Google TPU 的 ICI 400 Gbps/芯片,据 PyTorch 官方分布式训练文档 与 Megatron-LM 论文 arXiv:1909.08053,2019-09 发布)。
DiLoCo 通过三个机制将通信量压缩到互联网可承载的水平。
机制一:频率降低。 传统方法每步同步,DiLoCo 每 200 步同步一次。通信频率下降 200 倍。
机制二:发送更新而非梯度。 传统方法发送原始梯度(高熵),DiLoCo 发送参数更新 Δθ = θ_new - θ_old(低熵,因为相邻轮的参数变化小)。这为压缩提供了天然优势。
机制三:激进的梯度压缩。 技术报告中提到使用 1-bit SGD 或 Top-k 稀疏化,将更新压缩到原始大小的 1/100 甚至更低。1-bit SGD 的核心思想是只保留梯度的符号(正/负),用 1 个比特表示一个参数;误差通过本地动量缓冲累积,在后续轮次补偿。这一思路继承自原始 DiLoCo 论文(据 arXiv:2311.08105,2023-11-14)中对低通信训练的探索,Decoupled DiLoCo 在此基础上进一步将压缩与异步容错结合。
三者叠加的效果是:12B 模型的每轮同步通信量从 48 GB 压缩到约 50–200 MB。在 2–5 Gbps 的广域网上,单轮同步可在 0.1–1 秒 内完成——相对于 200 步本地训练(通常耗时数分钟),通信开销几乎可以忽略。
这正是 DeepMind 博客中提到的"通信被隐藏到计算的间隙中"的物理含义。不是通信变快了,而是通信被稀释到了足够长的计算周期里,以至于它的延迟不再成为瓶颈。
| 维度 | 传统数据并行 (DDP) | DiLoCo (同步) | Decoupled DiLoCo (异步) |
|---|---|---|---|
同步频率 | 每步 | 每 N 步 (N≈50) | 每 N 步 (N≈200) |
单轮通信量 (12B) | ~48 GB (BF16) | ~500 MB (压缩后) | ~50–200 MB (1-bit) |
所需带宽 | 400 Gbps (ICI) | 50–100 Gbps | 2–5 Gbps (WAN) |
跨数据中心可行 | 否(延迟过高) | 有限(需稳定连接) | 是(容忍延迟与丢包) |
Straggler 影响 | 致命(全局等待) | 显著(同步阻塞) | 轻微(宽限窗口吸收) |
故障恢复 | 需重启整个作业 | 回滚到最近 checkpoint | 跳过故障学习者继续 |
硬件混合代际 | 不支持(锁步) | 有限支持 | 原生支持(v5p+v6e) |
4容错机制:混沌工程与百万芯片零停机
当集群规模达到百万级芯片时,硬件故障不再是"是否会发生"的问题,而是"每秒钟发生多少次"的问题。Google 的生产环境数据显示,万片 TPU 集群每天预期发生 2–5 次加速器故障,网络链路抖动更为频繁。传统 SPMD 训练遇到故障时,整个作业必须回滚到最近的 checkpoint 并重启——在百万芯片规模下,这意味着每天可能丢失数小时的训练进度。
Decoupled DiLoCo 的容错设计源自"混沌工程(Chaos Engineering)"理念:不是试图防止故障,而是假设故障必然发生,并让系统在故障中继续运行。
机制一:最小法定人数(Minimum Quorum)。 同步器不要求所有学习者都到达。只要收到 ≥ quorum_size 个学习者的更新,就可以执行聚合。在 4 学习者配置中,quorum_size=3 意味着允许 1 个学习者完全缺席而不影响本轮同步。
机制二:自适应宽限窗口(Adaptive Grace Window)。 对于迟到但未缺席的学习者,同步器给予一个动态窗口(默认 30 秒)。窗口内到达的更新仍被纳入聚合;超时则丢弃。这吸收了网络抖动和临时降频的影响。
机制三:动态 Token 加权合并(Token-Weighted Merging)。 不同学习者在本轮处理的 token 数量可能不同(因为故障、降频或硬件代际差异)。同步器根据每个学习者实际处理的 token 数分配聚合权重,而非简单平均。这确保了模型更新的方向由"看到最多数据的学习者"主导,避免被异常更新带偏。
机制四:严格零全局停机(Strict Zero Global Downtime)。 技术报告中强调,即使某个学习者完全崩溃,其他学习者继续本地训练不中断。崩溃的学习者在恢复后,从最近的本地 checkpoint 继续,其缺失的更新由其他学习者的加权合并补偿。
据 arXiv:2604.21428(2026-04-23)的模拟实验,在百万级芯片、高故障率的场景下,Decoupled DiLoCo 维持了 88% 的 goodput,而传统数据并行跌至 27%,原始 DiLoCo(同步版本)为 64%。这不是渐进式改进,而是数量级的跃升。
5与 Pathways / LaMDA 的对比:同步范式的极限
要理解 DiLoCo 的突破性,必须将其置于 Google 分布式训练的演进脉络中。
Pathways(2021)。 Google 在 2021 年的博客(注:原文 URL 已下线,此处引用 Google 官方公告标题与社区存档)中提出 Pathways——一个"下一代 AI 架构",目标是在数千片 TPU 上高效训练稀疏模型(如 Mixture-of-Experts)。Pathways 的核心创新是异步流水线调度:它允许模型的不同部分(expert)在不同加速器上并行执行,并通过高效的张量路由(tensor routing)减少通信。但 Pathways 仍然是同步范式——它优化的是数据中心内的通信效率,而非跨数据中心的容错能力。
LaMDA(2022)。 LaMDA 论文(arXiv:2203.12533,2022-01-28 发布)描述了在 1024 TPU v3 上训练 137B 参数语言模型的实践。LaMDA 使用标准的同步数据并行 + 模型并行混合策略,依赖 Google 内部的高速 ICI(Interceptor Chip Interconnect)实现低延迟 All-Reduce。论文中提到的工程挑战包括:checkpoint 频率与 I/O 瓶颈、长序列训练的内存碎片、故障恢复的时间成本——这些都是同步范式在大规模下的典型痛点。
Decoupled DiLoCo(2026)。 与 Pathways 和 LaMDA 的根本区别在于:DiLoCo 放弃了"所有加速器必须锁步"的假设。它接受跨数据中心的高延迟(50ms+ RTT)和低带宽(2–5 Gbps),并通过异步聚合和容错机制将这些"缺陷"转化为设计约束。
三者的演进脉络揭示了一个清晰的趋势:从"优化同步"到"解耦同步"再到"容忍异步"。Pathways 试图让同步更快,LaMDA 试图让同步更稳,DiLoCo 则试图让同步变得不那么必要。
| 维度 | Pathways (2021) | LaMDA (2022) | Decoupled DiLoCo (2026) |
|---|---|---|---|
设计目标 | 稀疏模型高效训练 | 大规模语言模型 | 跨数据中心弹性训练 |
同步范式 | 同步(优化流水线) | 同步(数据+模型混合) | 异步(解耦本地+全局) |
典型规模 | 数千 TPU | ~1K TPU | 数万到百万芯片(跨多 DC) |
带宽需求 | 400 Gbps (ICI) | 400 Gbps (ICI) | 2–5 Gbps (WAN) |
容错能力 | 故障需重启作业 | Checkpoint 回滚 | 故障学习者被跳过 |
硬件混合 | 不支持 | 不支持 | 原生支持(v5p+v6e) |
通信瓶颈 | 数据中心内 All-Reduce | 数据中心内 All-Reduce | 隐藏到计算间隙 |
适用场景 | 单数据中心稀疏 MoE | 单数据中心稠密/稀疏 | 多数据中心任意架构 |
6工程权衡:DiLoCo 不是银弹
尽管 DiLoCo 在容错和扩展性上表现优异,它并非没有代价。工程师在采用前必须清楚以下权衡。
权衡一:收敛速度与最终质量的折中。 异步更新意味着学习者使用的是稍过时的全局模型进行本地训练。这引入了"陈旧性(staleness)",理论上可能导致收敛路径偏离同步最优。技术报告显示,在文本和视觉任务上,DiLoCo 的最终基准精度与同步方法持平(据 DeepMind 博客,Gemma 4 模型实测),但达到相同精度所需的总步数可能增加 5–15%。这是用"每步质量"换"整体 goodput"的典型工程折中。
权衡二:本地优化器的敏感性。 DiLoCo 的性能高度依赖本地优化器的选择。技术报告推荐使用带 momentum 的 AdamW,并在本地步数间维持动量缓冲。如果本地优化器选择不当(如纯 SGD 无动量),异步更新的方差会导致模型发散。这是一个非平凡的超参搜索问题。
权衡三:压缩引入的偏差。 1-bit SGD 和 Top-k 稀疏化都是有损压缩。它们通过本地动量缓冲补偿误差,但在某些敏感层(如 embedding、LayerNorm)可能导致精度损失。实践中需要对关键层禁用压缩或使用更高精度(如 FP16 而非 1-bit)。
权衡四:调试复杂度上升。 异步系统的故障模式远比同步系统复杂。当模型精度异常时,工程师需要排查:是某个学习者的数据分布偏移?是压缩引入的偏差?还是同步器的聚合权重失衡?传统同步训练的"所有加速器状态一致"的不变量不再成立,可观测性(observability)工具必须升级。
权衡五:硬件混合代际的性能上限。 DiLoCo 支持 v5p 和 v6e 混合训练,这延长了旧硬件的生命周期。但整体训练速度受限于最慢的学习者——如果 v5p 学习者的本地步耗时是 v6e 的两倍,宽限窗口必须设置得足够长以容纳它,否则 v5p 的更新将被频繁丢弃,其算力被浪费。
收敛质量:DiLoCo 最终精度与同步方法持平,但达到相同精度可能需额外 5–15% 步数
优化器敏感:必须使用带 momentum 的 AdamW,纯 SGD 易导致发散
调试复杂度:异步系统的故障定位需要专门的可观测性工具
硬件混合:整体速度受限于最慢学习者,旧硬件可能成为新瓶颈
💡 一句话理解
DiLoCo 的最佳适用场景是:(1) 单数据中心电力/冷却已达上限;(2) 硬件故障率 > 1 次/天/万片;(3) 可接受 5–15% 的额外收敛步数。对于小规模、低故障率的训练,传统同步方法仍然更简单高效。
⚠️ 常见踩坑
不要盲目追求'异步'和'容错'。DiLoCo 的复杂度远高于传统训练——如果你的集群规模 < 1000 片加速器且故障率可控,DDP/Megatron 仍然是更稳妥的选择。
7部署实战:从 12B 到生产级预训练
Decoupled DiLoCo 的首次生产级验证是 12B 参数模型跨 4 个美国区域的训练(据 DeepMind 博客,2026-04-23)。这次实验的几个关键数据值得工程师参考。
网络配置。 4 个区域之间使用 2–5 Gbps 的广域网连接——这不是 Google 专有的高速 ICI,而是商业互联网级别的带宽。这意味着 DiLoCo 可以在任何拥有标准互联网接入的数据中心部署,无需定制网络基础设施。
训练速度。 相比传统同步方法(假设能在同等规模下运行),DiLoCo 的端到端训练时间缩短了 20 倍以上。这并非因为计算更快,而是因为消除了阻塞等待——传统方法中,最慢的加速器决定全局速度;DiLoCo 中,慢加速器只影响自己的本地步,不拖慢其他人。
硬件混合实验。 DeepMind 特别测试了 TPU v5p 与 v6e 混合训练。结果表明,不同代际、不同速度的芯片在 DiLoCo 框架下达到了与单代际训练相同的 ML 性能。这意味着组织可以渐进式升级硬件,而不是等待新一代芯片全部到货后再整体替换。
对基础设施规划的启示。 DiLoCo 的出现改变了数据中心投资的决策模型。传统思路是"建造一个超大规模数据中心,填满最新芯片";DiLoCo 允许"利用任何闲置算力,无论其地理位置和代际"。这对于拥有分散数据中心的大型组织(如云厂商、跨国企业)尤其有价值—— stranded capacity(闲置算力)可以被转化为有效训练资源。
# DiLoCo 训练监控关键指标
# 异步训练的可观测性比同步训练复杂得多
class DiLoCoMonitor:
"""监控 DiLoCo 训练健康度的核心指标"""
def track_round_metrics(self, round_id: int):
# 1. 法定人数达成率
quorum_hit = self.learners_arrived >= self.quorum_size
# 2. 各学习者延迟分布
latencies = {lid: t_arrival - t_round_start
for lid, t_arrival in self.arrival_times.items()}
# 3. 宽限窗口内 vs 超时丢弃
within_grace = sum(1 for t in latencies.values()
if t <= self.grace_window)
dropped = len(latencies) - within_grace
# 4. Token 加权分布(检测数据倾斜)
token_weights = {lid: n_tokens / total_tokens
for lid, n_tokens in self.token_counts.items()}
# 5. 更新压缩比(检测压缩异常)
compression_ratio = self.original_size / self.sent_size
# 6. 本地 vs 全局 loss 差异(检测陈旧性)
staleness_gap = abs(local_loss - global_loss_at_sync)
# 告警规则
if dropped > len(self.learners) - self.quorum_size:
self.alert("CRITICAL: 多个学习者超时,可能网络分区")
if max(token_weights.values()) > 0.6:
self.alert("WARNING: Token 分布倾斜,检查数据加载")
if staleness_gap > 0.1 * global_loss:
self.alert("WARNING: 陈旧性过高,考虑减少 inner_steps")8未来演进:DiLoCo 之后的分布式训练
Decoupled DiLoCo 并非分布式训练的终点。从技术报告和 Google 的公开表态中,可以识别出几个明确的演进方向。
方向一:自适应内部步数。 当前 DiLoCo 使用固定的 inner_steps(如 200),但最优值取决于数据分布、硬件速度和网络条件。未来的系统可能根据实时 goodput 反馈动态调整内部步数——网络拥塞时增加内部步数以减少同步频率,硬件故障率上升时减少内部步数以更快聚合。
方向二:层级化同步器。 当前的中央同步器是单点。对于超大规模部署(如 10+ 数据中心),可能引入层级化同步器:区域同步器先聚合本区域的学习者,再向全局同步器上报。这进一步降低了全局同步的通信量。
方向三:与推理基础设施的统一。 Google 在博客中提到"全栈方法(full-stack approach)"——训练与推理不再割裂。DiLoCo 的异步参数服务器架构与推理时的参数服务(parameter server)有天然相似性,未来可能出现训练-推理统一运行时,模型在训练完成后无缝切换到推理模式,无需参数迁移。
方向四:开放生态。 目前 DiLoCo 的实现深度绑定 Google 的 TPU 和 Pathways 运行时。但随着 PyTorch 2.x 对异步训练的原生支持(如 torch.distributed.async),以及开源框架(如 NVIDIA NeMo、Hugging Face Accelerate)的跟进,DiLoCo 风格的训练有望在 GPU 集群上复现,惠及更广泛的社区。
对于基础设施工程师而言,DiLoCo 的意义不仅在于一个具体的算法,而在于它证明了"异步 + 容错"的训练范式可以在生产级规模下工作。这将重新定义未来 AI 数据中心的架构——从"单一超大规模"走向"多中心联邦"。
💡 一句话理解
关注 PyTorch 和 NVIDIA 的异步训练支持进展。DiLoCo 的核心思想(解耦本地训练 + 异步聚合)是框架无关的,一旦开源生态跟进,将大幅降低部署门槛。
⚠️ 常见踩坑
DiLoCo 目前的生产验证仅限于 Google 内部的 TPU 环境。在 GPU 集群上复现时,需要重新评估压缩算法、优化器行为和故障模式的差异。不要假设结果可以直接迁移。
参考资料
Arthur Douillard et al., "Decoupled DiLoCo for Resilient Distributed Pre-training", arXiv:2604.21428, 2026-04-23. https://arxiv.org/abs/2604.21428
Google DeepMind Blog, "Decoupled DiLoCo: Resilient, Distributed AI Training at Scale", 2026-04-23. https://deepmind.google/blog/decoupled-diloco/
Aakanksha Chowdhery et al., "PaLM: Scaling Language Modeling with Pathways", arXiv:2204.02311, 2022-04-05 (Pathways 架构的首个大规模验证). https://arxiv.org/abs/2204.02311
Mohammad et al., "LaMDA: Language Models are Few-Shot Learners", arXiv:2203.12533, 2022-01-28. https://arxiv.org/abs/2203.12533
Arthur Douillard et al., "DiLoCo: Distributed Low-Communication Training of Language Models", arXiv:2311.08105, 2023-11-14 (原始 DiLoCo 论文,Decoupled DiLoCo 的前身). https://arxiv.org/abs/2311.08105
NVIDIA, "Megatron-LM: Training Multi-Billion Parameter Language Models Using Model Parallelism", arXiv:1909.08053, 2019-09-18. https://arxiv.org/abs/1909.08053
PyTorch Team, "Distributed Data Parallel in PyTorch: Tutorial", 官方文档. https://pytorch.org/tutorials/intermediate/dist_tuto.html
Jeff Dean et al., "Pathways: A Next-Generation AI Architecture for Google", Google AI Blog, 2021-05 (Pathways 架构设计目标与愿景). https://ai.googleblog.com/2021/05/pathways-next-generation-ai-architecture.html
🎯 相关面试题
巩固本篇知识点,备战 AI 岗位面试。
- 高级概念查看详解 →
什么是 MLOps?它与 DevOps 有何区别?
[MLOps](/glossary/mlops) 将 [DevOps](/glossary/mlops) 的自动化、CI/CD 扩展到 ML:除代码外还需版本化数据/模型,并持续监控数据漂移与模型退化。
- 中级概念查看详解 →
云计算在 MLOps 中起什么作用?
云计算为 [MLOps](/glossary/mlops) 提供弹性 GPU/TPU、对象存储、托管训练与推理服务,按需扩展且免自建机房,加速实验到生产。
- 中级概念查看详解 →
主流大模型部署/推理框架 vLLM、TGI、llama.cpp、SGLang 如何对比与选型?
vLLM 靠 PagedAttention 与连续批处理拿高吞吐,是生产服务首选;TGI 生产级且贴 HF 生态;llama.cpp 主打 CPU/边缘/Mac 量化本地;SGLang 擅长复杂控制流与结构化输出。按吞吐、硬件、并发、控制流和生态选型。
- 高级场景查看详解 →
1000 token/s 的 GPU 集群被 1000 用户并发访问,如何分析性能瓶颈?
先算账:1000 用户并发对 1000 tok/s 总吞吐,人均吞吐极低、必然排队。瓶颈要从吞吐与延迟权衡、连续批处理是否打满、KV Cache 显存上限、prefill/decode 阶段、显存带宽与算力谁先到顶逐层定位,再用 vLLM、量化、扩容、限流分级、投机解码优化。
