LLMs之DeepSeek:DeepSeek-V3/R1推理系统的架构设计和性能统计的简介、细节分析之详细攻略
目录
DeepSeek-V3/R1推理系统的架构设计
1、大规模跨节点专家并行 (EP)
2、计算-通信重叠
3、负载均衡
4、在线推理系统图
DeepSeek-V3/R1推理系统的架构设计
2025年3月1日,DeepSeek-V3/R1推理系统的设计目标是实现高吞吐量和低延迟。为了达到这2个目标,系统采用了跨节点专家并行(EP)策略:
>> 专家并行 (EP):通过将专家分配到不同的GPU上,显著提高批量大小,从而提升GPU矩阵计算效率,提高吞吐量;同时,每个GPU只处理少量专家,减少内存访问需求,降低延迟。
>> EP的挑战性:EP增加了系统复杂性,主要体现在跨节点通信和负载均衡两个方面。 跨节点通信需要设计合适的计算流程来重叠计算和通信;多节点参与需要数据并行 (DP) 和不同DP实例之间的负载均衡。
DeepSeek-V3/R1推理系统通过巧妙地运用专家并行、计算-通信重叠和多层次负载均衡策略,在保证低延迟的同时实现了高吞吐量,并展现了良好的经济效益。
GitHub地址:open-infra-index/202502OpenSourceWeek/day_6_one_more_thing_deepseekV3R1_inference_system_overview.md at main · deepseek-ai/open-infra-index · GitHub
1、大规模跨节点专家并行 (EP)
DeepSeek-V3/R1模型具有高稀疏性(每层256 位专家中只有8个专家被激活),因此需要极大的批量大小来保证每个专家的足够批量,从而实现高吞吐量和低延迟。 系统采用了预填充-解码解耦架构,在预填充和解码阶段使用不同程度的并行化:
>> 预填充阶段:使用路由专家EP32和MLA/共享专家DP32,每个部署单元包含4个节点和32个冗余路由专家,其中每个GPU处理9个路由专家和1个共享专家。
>> 解码阶段:使用路由专家EP144和MLA/共享专家DP144,每个部署单元包含18个节点和32个冗余路由专家,其中每个GPU处理2个路由专家和1个共享专家。
2、计算-通信重叠
大规模跨节点EP会带来显著的通信开销。为了缓解这个问题,系统采用了双批次重叠策略:将请求批次分成两个微批次,交替执行,隐藏一个微批次的通信成本在另一个微批次的计算中。
>> 预填充阶段:预填充阶段采用这种双微批次交替执行策略;
>> 解码阶段:解码阶段由于不同阶段的执行时间不平衡,将注意力层细分为两步,并使用5级流水线来实现计算通信的无缝重叠。
https://github.com/deepseek-ai/profile-data通信计算重叠机制的更多详细信息:https://github.com/deepseek-ai/profile-data
3、负载均衡
大规模并行(包括DP和EP)带来了负载不均衡的挑战,如果单个 GPU 的计算或通信负荷过重,它就会成为性能瓶颈,导致整个系统变慢,同时使其他 GPU 处于闲置状态。为了最大化资源利用率,系统在三个层次上进行了负载均衡:
>> 预填充负载均衡器:解决请求数量和序列长度在不同DP实例之间变化导致的核心注意力计算和调度发送负载不均衡问题。目标是平衡核心注意力计算和GPU的输入token数量。
>> 解码负载均衡器:解决请求数量和序列长度在不同DP实例之间变化导致的核心注意力计算(与KVCache使用相关)和调度发送负载不均衡问题。目标是平衡KVCache使用和GPU的请求数量。
>> 专家并行负载均衡器:解决高负载专家导致不同GPU之间专家计算工作负载不均衡的问题。目标是平衡每个GPU上的专家计算。
4、在线推理系统图
所有DeepSeek-V3/R1推理服务都在H800 GPU上运行,精度与训练一致(矩阵乘法和调度传输使用FP8,核心MLA计算和组合传输使用BF16)。 系统根据昼夜服务负载变化动态调整部署节点数量。
此外,由于白天服务负载高,夜间负载低,我们实施了在白天高峰时段在所有节点部署推理服务的机制。在夜间负载低的时段,我们减少推理节点并将资源分配给研究和训练。在过去24小时内(UTC+8 2025年2月27日下午12点到2025年2月28日下午12点):
● 峰值节点占用率:278个节点
● 平均节点占用率:226.75个节点(每个节点包含8个H800 GPU)
● 总输入token:6080亿,其中3420亿(56.3%)命中磁盘KV缓存
● 总输出token:1680亿,平均输出速度为每秒20-22个token
● 平均每个输出token的KV缓存长度:4989个token
● 每个H800节点的平均吞吐量:预填充阶段约73.7k tokens/s输入,解码阶段约14.8k tokens/s输出
● 日总成本:约87072美元
● 理论日总收入 (按DeepSeek-R1定价计算):约562027美元,利润率545% (实际收入由于定价策略和非货币化服务等原因远低于此)。