* ^; U) D6 w; n3 w; V+ hDeepSeek-V3 论文中提出的组限制门控算法(Group-Restricted Gating)是 相关的核心创新之一。为了充分发挥这一算法的优势,DeepEP 提供了一组专门针对非对称带宽环境优化的内核。. r, q' ~/ l( {, u) f
5 z: P" h8 m& T
在实际的硬件部署中,NVLink 和 RDMA 之间的带宽往往存在差异。NVLink 通常用于 GPU 之间的直接高速互连,提供极高的带宽;而 RDMA 则用于跨节点通信,带宽相对较低。DeepEP 的这些内核能够智能地感知并利用这种非对称性,高效地将数据在 NVLink 域和 RDMA 域之间进行转发。 4 a5 s/ b+ ^# O2 U( }- z3 T' } k% ?4 A7 c4 r
这种精细化的资源管理不仅提高了吞吐量,还支持 SM(流式多处理器)数量控制。这意味着用户可以根据实际任务的需求,精细地调整计算资源的分配,进一步优化性能。 ; y; P' w S- P& ^/ |# f& Y; h ) l q* A) a( W2 L& U# R1 F8 T"为了与DeepSeek-V3论文中提出的组限制门控算法保持一致,DeepEP 提供了一组针对非对称域带宽转发(例如将数据从 NVLink 域转发到 RDMA 域)进行优化的内核。这些内核提供高吞吐量,使其适合训练和推理预填充任务。此外,它们还支持 SM(流式多处理器)数量控制。" c' s$ m6 j; A1 Z& F1 S + E% U/ F( I- o& s( s+ G低延迟内核:推理性能的保障4 G( b& @: {2 O' e7 A3 Z( v0 B+ O
, S5 o- j; ^# N8 V1 ^6 v5 @5 H对于在线推理服务而言,低延迟是至关重要的性能指标。DeepEP 专门为延迟敏感的推理解码任务设计了一组低延迟内核。这些内核通过直接使用 RDMA 通信,绕过 NVLink,从而尽可能地减少通信延迟。 7 L5 k F* v' A. T, o5 l9 t! G" W8 [4 Z
在推理阶段,模型逐个生成 token,每次生成都需要进行通信。DeepEP 的低延迟内核能够将每次通信的时间压缩到微秒级别,从而显著提升整体的推理速度,降低用户感知的响应时间。- ?4 A2 E$ e3 M* ~* E
# b) b% I/ k! w"对于延迟敏感的推理解码,DeepEP 包含一组具有纯 RDMA 的低延迟内核,以最大限度地减少延迟。"4 y- x& {. a; l3 T3 E8 h" y. ^
- f9 `/ `+ o# s( Z
通信计算重叠:系统级优化2 j% s4 e5 H' b0 x0 @
+ H3 }9 Z# N4 g9 S% P# Q D
DeepEP 引入了一种基于钩子的通信计算重叠机制,这是一种系统级的优化策略。传统的通信库通常需要占用一定的 SM 资源来进行通信调度和管理,这在一定程度上会影响计算效率。DeepEP 的创新之处在于,它的通信机制完全不占用任何 SM 资源,将宝贵的计算资源全部用于模型本身的计算。 ; k1 }8 z! l0 e, @) W+ c8 V, Y) `) s2 m. b ]2 G9 A7 C( L
这种机制通过精心设计的钩子函数,将通信操作与计算操作异步地交织在一起。当 GPU 执行计算任务时,通信操作在后台并行进行,从而实现了计算和通信的高度并行,最大化了硬件资源的利用率。- s2 H, n% s/ d) _% u. \
% \' a, M) T; T3 G: d0 c2 w"该库还引入了一种基于钩子的通信计算重叠方法,该方法不占用任何 SM 资源。" "NOTES: the actual tensor will not be received only if you call hook(), it is useful for double-batch overlapping, but without any SM occupation" DeepEP还提供了双批次(Double-Batch)重叠的方法,通过return_recv_hook控制,允许用户精细的控制通信和计算的时间。2 p4 u- S4 W" A
) O% n4 x9 Y5 h% y- i5 IDeepSeek 团队不仅在技术上精益求精,更有着开放、协作的精神。他们将经过实践验证的 DeepEP 开源,与整个 AI 社区分享他们的成果。* L9 y6 p1 h: i* R
; q. I4 e# c f4 h, W4 o/ G, r JDeepEP 采用 MIT 许可协议,这意味着任何人都可以自由地使用、修改和分发 DeepEP 的代码,无需担心版权问题。这种开放性将极大地促进 MoE 模型的研究和应用,降低 MoE 模型的开发门槛。1 E: L Y) V9 a. A5 ]- c