当前位置:首页 > 科技资讯 > 正文

DeepSeek开源LPLB:基于线性规划的MoE负载均衡器突破训练瓶颈

近日,DeepSeek在GitHub上悄然发布了一个新的开源代码库:LPLB,即基于线性规划的负载均衡器。

DeepSeek开源LPLB:基于线性规划的MoE负载均衡器突破训练瓶颈 LPLB 负载均衡 MoE模型 线性规划 第1张

项目地址:https://github.com/deepseek-ai/LPLB

与以往高调宣布不同,这次发布并未通过推文或公众号更新,仅有少数技术博主分享,关注度有限。目前,该项目的star数量尚未突破200。

然而,深入探究后,这个项目显得非同小可,值得业界更多目光。X平台用户gm8xx8评论指出,这表明DeepSeek正致力于解决正确性与吞吐量瓶颈,为下一代模型发布铺平道路。

DeepSeek开源LPLB:基于线性规划的MoE负载均衡器突破训练瓶颈 LPLB 负载均衡 MoE模型 线性规划 第2张

项目概述

LPLB,全称Linear-Programming-Based Load Balancer,是一款专注于混合专家(MoE)模型的并行负载均衡器。它采用线性规划算法,动态优化专家并行工作负载的分配效率。

具体而言,LPLB通过三大步骤实现动态负载均衡:

动态重排序:依据实时工作负载统计,对专家进行重新排序。

构建副本:结合静态拓扑结构,创建专家副本以增强冗余。

求解最优分配:针对每个数据批次,利用线性规划求解最优的Token分配方案。

详细来说,LPLB的专家重排序由EPLB辅助完成。实时工作负载数据可来自用户输入、通过torch.distributed收集,或直接从Deep-EP缓冲区的内部通信器获取。求解器则内置了LP求解器,实现单SM(流多处理器)内点法,并借助NVIDIA的cuSolverDx和cuBLASDx库进行高效线性代数运算,从而有效缓解MoE模型中因Token分配不均导致的GPU闲置问题。

X用户big goose分析认为,该方案与英伟达的SM调度策略相似,但抽象层级提升至流水线级别。LPLB强调“单SM”,意味着求解过程轻量,计算资源占用极少。

DeepSeek开源LPLB:基于线性规划的MoE负载均衡器突破训练瓶颈 LPLB 负载均衡 MoE模型 线性规划 第3张

但需注意,LPLB目前尚未投入生产环境。DeepSeek在Readme中明确表示:“LPLB目前处于早期研究阶段,性能改进仍在评估中。”

LPLB的核心机制

LPLB是EPLB(专家并行负载均衡器)的延伸,专注于解决MoE训练中的动态负载波动问题。

EPLB与LPLB对比

EPLB:主要处理静态不均衡,例如因数据分布特性导致的专家长期过载。

LPLB:着重应对动态波动,即训练过程中小批次数据随机性引发的瞬时负载抖动。

关键原理

冗余专家:每个冗余专家(副本)链接到原始专家,在GPU间形成连接边。

边容量:边的容量定义为当前批次分配给该冗余专家的Token数量,限定了负载平衡的最大Token流量。

LP优化:LPLB求解线性规划问题,在遵守边容量约束下,沿边重新分配Token,以最小化专家并行组内的负载不均衡。

实施流程

首先,通过EPLB选择需复制的专家(仅重排序,未实际复制)。随后,基于选定拓扑复制负载最重的专家。在通信优化方面,实时工作负载同步采用NVLINK和NVSHMEM技术,替代传统torch.distributed.allreduce,显著降低通信开销,这也是预装DeepEP的原因。

现有局限

尽管LPLB提供动态优化,但仍存在一些限制:

忽略非线性计算成本:当前规划器仅平衡Token总数,未考虑分组矩阵乘法时间成本的非线性特性,可能导致某些场景下性能非最优。

求解延迟:求解器在节点内优化约需100微秒(跨节点更久),对于极小批次规模,延迟可能较明显。

极端不均衡情况:全局负载极端不均衡时,LPLB表现可能不及EPLB,因LPLB避免将多个副本分配给同一原始专家。

典型拓扑结构

LPLB允许通过修改r2o矩阵定义专家副本分布方式,常见拓扑包括:

立方体:在GPU子集上复制专家,形成带对角边的立方体图,要求每个GPU至少2个专家。适用于8 GPU的EP子组内平衡,且不牺牲跨节点通信性能。

超立方体:类似立方体但无对角边,需16个GPU,适合跨16 GPU的专家并行。

环面:在同一节点内邻居GPU上复制一个专家,在邻节点GPU上复制另一专家,形成环面图,要求每个GPU至少2个专家。该拓扑对全局平衡有效,但因涉及更多节点内通信,效率通常低于立方体。

总结

DeepSeek开源的LPLB库,核心在于解决大模型训练中的“木桶效应”,即训练速度受制于负载最重的GPU。其创新点在于引入线性规划数学工具实时计算最优分配,并利用底层NVSHMEM技术突破通信瓶颈。对于研究MoE架构训练加速的开发者而言,这是一个极具价值的参考实现。

具体安装与测试指南请访问原代码库查阅。