首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

DeepSeek-V3/R1推理系统概述

DeepSeek 开源周的第六天,还有一件事:DeepSeek-V3/R1推理系统概述。通过以下方式优化吞吐量和延迟:

跨节点EP驱动的批处理扩展

计算-通信重叠

负载均衡

DeepSeek 在线服务统计指标:每个 H800 节点每秒 73.7k 输入以及 14.8k 输出 Token;成本利润率高达 545%。

非常感谢 DeepSeek 团队为我们共同的AGI目标做出的贡献,以下是全文翻译。

系统设计原则

DeepSeek-V3/R1推理服务的优化目标是:更高的吞吐量和更低的延迟。为优化这两个目标,我们的解决方案采用了跨节点专家并行(EP)技术。

首先,EP显著扩大了批处理大小,提高GPU矩阵计算效率,提升吞吐量。

其次,EP将专家分布在各GPU上,每个GPU仅处理少量专家(减少内存访问需求),从而降低延迟。

然而,EP增加了系统复杂性,主要体现在两个方面:

1. EP引入了跨节点通信。为优化吞吐量,必须设计适当的计算工作流,使通信与计算重叠。

2. EP涉及多个节点,因此固有地需要数据并行(DP)并要求在不同DP实例间进行负载均衡。

本文重点介绍我们如何通过以下方式解决这些挑战:利用EP扩大批处理大小;将通信延迟隐藏在计算背后;执行负载均衡。

大规模跨节点专家并行(EP)

由于DeepSeek-V3/R1中专家数量众多(每层256个专家中仅激活8个),模型的高稀疏性需要极大的总体批处理大小。这确保了每个专家有足够的批处理大小,实现更高的吞吐量和更低的延迟。大规模跨节点EP因此至关重要。

由于我们采用了预填充-解码分离架构,在预填充和解码阶段使用不同程度的并行策略:

预填充阶段[路由专家EP32,MLA/共享专家DP32]:每个部署单元跨4个节点,包含32个冗余路由专家,每个GPU处理9个路由专家和1个共享专家。

解码阶段[路由专家EP144,MLA/共享专家DP144]:每个部署单元跨18个节点,包含32个冗余路由专家,每个GPU管理2个路由专家和1个共享专家。

计算-通信重叠

大规模跨节点EP引入了显著的通信开销。为减轻这一问题,我们采用双批次重叠策略,通过将一批请求分为两个微批次来隐藏通信成本并提高整体吞吐量。 在预填充阶段,这两个微批次交替执行,一个微批次的通信成本隐藏在另一个的计算背后。

在解码阶段,不同阶段的执行时间不平衡。因此,我们将注意力层细分为两个步骤,并使用5阶段流水线实现无缝的通信-计算重叠。

关于我们通信-计算重叠机制的更多详情可在 github.com/deepseek-ai/profile-data 找到。

实现最佳负载均衡

大规模并行(包括DP和EP)带来一个关键挑战:如果单个GPU计算或通信过载,它会成为性能瓶颈,减慢整个系统速度,而其他GPU则处于闲置状态。为最大化资源利用率,我们致力于平衡所有GPU的计算和通信负载。

1. 预填充负载均衡器

主要问题:DP实例间请求数量和序列长度的变化导致核心注意力计算和分发发送负载不平衡。

优化目标:平衡GPU间的核心注意力计算(核心注意力计算负载均衡)。平衡每个GPU的输入令牌数(分发发送负载均衡),防止在特定GPU上处理时间过长。

2. 解码负载均衡器

主要问题:DP实例间请求数量和序列长度不均导致核心注意力计算(与KVCache使用相关)和分发发送负载差异。

优化目标:平衡GPU间的KVCache使用(核心注意力计算负载均衡)。平衡每个GPU的请求数量(分发发送负载均衡)。

3. 专家并行负载均衡器

主要问题:对于给定的MoE模型,存在固有的高负载专家,导致不同GPU间专家计算工作负载不平衡。

优化目标:平衡每个GPU上的专家计算(即,最小化所有GPU的最大分发接收负载)。

DeepSeek 在线推理系统图

DeepSeek 在线服务统计

所有DeepSeek-V3/R1推理服务都在H800 GPU上提供,精度与训练一致。 具体而言,矩阵乘法和分发传输采用与训练一致的FP8格式, 而核心MLA计算和组合传输使用BF16格式,确保最佳服务性能。

此外,由于白天服务负载高而夜间负载低,我们实施了一种机制,在白天高峰时段跨所有节点部署推理服务。 在低负载的夜间时段,我们减少推理节点并将资源分配给研究和训练。

在过去24小时内(UTC+8 2025/02/27 12:00 PM至2025/02/28 12:00 PM),V3和R1推理服务的综合峰值节点占用率达到278个,平均占用率为226.75个节点(每个节点包含8个H800 GPU)。 假设一个H800 GPU的租赁成本为每小时2美元,每日总成本为87,072美元。

在24小时统计期间(UTC+8 2025/02/27 12:00 PM至2025/02/28 12:00 PM),V3和R1:

总输入令牌:608B,其中342B令牌(56.3%)命中磁盘上的KV缓存。

总输出令牌:168B。平均输出速度为每秒20-22个令牌,每个输出令牌的平均kvcache长度为4,989个令牌。

每个H800节点在预填充期间平均吞吐量约为73.7k令牌/秒输入(包括缓存命中)或在解码期间约为14.8k令牌/秒输出。

上述统计数据包括来自网页、应用程序和API的所有用户请求。如果所有令牌按DeepSeek-R1的定价(*)计费,每日总收入将为562,027美元,成本利润率为545%。

R1定价:0.14美元/百万输入令牌(缓存命中),0.55美元/百万输入令牌(缓存未命中),2.19美元/百万输出令牌。

然而,我们的实际收入大大低于此,原因如下:

1. DeepSeek-V3的定价明显低于R1。

2. 只有部分服务实现了货币化(网页和应用程序访问仍然免费)。

3. 在非高峰时段自动应用夜间折扣。

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OIwtoRbSHLvdAXX2Z5hNT3Pg0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

相关快讯

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券