https://lmsys.org/blog/2025-05-05-large-scale-ep/
以上是对文章《Deploying DeepSeek with PD Disaggregation and Large-Scale Expert Parallelism on 96 H100 GPUs》的中文总结,以及对您提到的几个术语(MLA、MoE、SGLang、VLLM、EP 和 DP)的说明。
这篇由 SGLang 团队于 2025年5月5日发布的技术博客,展示了如何采用 SGLang 框架,在 12 个节点(共 96 张 NVIDIA H100 GPU,Atlas Cloud)上,使用预填充-解码拆分(Prefill‑Decode Disaggregation)与大规模专家并行(Expert Parallelism,EP),成功复现 DeepSeek 的推理效率 ([lmsys.org][1])。
一种 attention 机制,用于捕捉复杂输入依赖关系。文章指出在此机制上,采用 DP Attention 进行数据并行以减少 KV 缓存冗余,提高内存效率 ([lmsys.org][1])。
模型中含有多个专家子网络,输入由路由模块分配给部分专家处理,形成“稀疏 FFN”(Sparse FFN)。优势在于计算高效但内存消耗大。文章提出用 Expert Parallelism(EP)将专家参数分散存储在多 GPU 上,并结合 DeepEP 和 EPLB 技术来优化通信与负载均衡 ([lmsys.org][1])。
一个高效的 LLM/VLM 推理框架,强调后端与前端协同设计。此次文章展示 SGLang:
虽文章未直接涉及 VLLM,但它是在同类型 LLM 推理框架中常被提及的对标系统。SGLang 团队曾于 2024 年对比并优化深度 remark,显示其性能优于 VLLM 。
一种并行策略,用于将 MoE 中的多个专家分布到不同 GPU 上管理内存压力。配合 DeepEP 通信库,支持两种调度模式:prefill 的高吞吐模式(normal dispatch)和 decode 的低延迟模式(low‑latency dispatch)。PD 拆分机制让这两种模式可并存 ([lmsys.org][1])。
不同于 tensor parallelism,DP 复制整模型到多个设备,再并行处理 batch。文章使用它对 attention、FFN、LM Head 进行优化:
技术 | 功能 |
---|---|
MLA | 模型核心注意力机制,配合 DP 优化 KV 内存 |
MoE | 稀疏专家网络,允许高效扩展但需加载专家参数 |
EP | 专家参数跨设备分布并管理通信模式 |
DP | 跨设备复制模型,实现高效 batch 推理 |
PD 拆分 | 分离 prefill 与 decode 阶段,优化资源利用 |
DeepEP / DeepGEMM / TBO / EPLB | 分别负责通信、矩阵计算、批次重叠与专家负载均衡 |
文章展示了通过这些协同优化,SGLang 在庞大 MoE 模型上达成高效、大规模部署,且成果开源,推动社区共建发展。
bu
基于 LMSYS 在文章《Deploying DeepSeek with PD Disaggregation and Large-Scale Expert Parallelism on 96 H100 GPUs》中展示的内容和实践经验,我们可以设计一套用于评估 大规模 MoE 模型部署性能 的完整测评工具与方案,覆盖:
工具/库名称 | 功能 | 说明 |
---|---|---|
SGLang | 推理框架 | 本文核心框架,支持 EP/DP/PD 拆分等 |
DeepEP | 高性能专家通信 | 用于优化专家参数的分布式通信 |
DeepGEMM | 高效矩阵乘法库 | 替代 PyTorch 默认 GEMM,加速 FFN/MoE |
vllm-benchmark | 推理性能基准工具 | 可用于横向对比 vLLM/SGLang 等 |
nvprof / Nsight / Nsight Systems | NVIDIA GPU 分析工具 | 分析 GPU 利用率、内存瓶颈等 |
Prometheus + Grafana | 系统监控 | 收集节点资源(CPU/GPU/内存/网络)利用率 |
torch.distributed + NCCL Debug | 通信调试工具 | 调试 DP/EP 分布式通信问题 |
日志分析工具(如 ELK) | 专家分布/调度可视化 | 对 EPLB / 路由行为做统计分析 |
部署 SGLang + DeepEP,加载 MoE 模型(如 DeepSeek-MoE);
验证 PD 拆分是否成功;
检查每个阶段(prefill/decode)是否绑定正确 GPU 核心;
分别测试:
固定 batch size,逐步增加 expert 数;
验证是否触发 DeepEP 的 dispatch 模式切换;
多组并发设置:
使用工具收集:
启用/关闭:
比较:
日志指标建议添加:
推荐数据集:使用 AlpacaEval / MMLU / GSM8K 的部分样本模拟实际对话负载。
自动化评估脚本:编写 eval_runner.py
实现多种并发配置自动跑测,并输出 markdown 表格或 CSV。