DeepEP 简介
DeepEP 是 DeepSeek 开发的首个专为混合专家模型(MoE)训练和推理设计的开源 EP(专家并行)通信库。该工具提供高吞吐量与低延迟的全对全 GPU 内核,支持节点内及节点间的 NVLink 和 RDMA 通信。DeepEP 针对 DeepSeek-V3 论文中提出的组限制门控算法进行了优化,支持 FP8 数据格式调度,并引入基于 Hook 的通信-计算重叠方法,避免占用 GPU 计算资源。其低延迟内核在推理解码阶段表现优异,延迟可低至 163 微秒。DeepEP 支持 Hopper 架构 GPU,要求 Python 3.8、CUDA 12.3 及 PyTorch 2.1 及以上版本。
DeepEP 主要功能
- 高效通信内核:提供高吞吐、低延迟的全对全 GPU 内核,适用于 MoE 的分发与合并操作。
- 低精度计算支持:兼容 FP8 和 BF16 等低精度数据格式,提升计算效率并减少内存占用。
- 优化通信机制:针对组限制门控算法进行优化,支持 NVLink 到 RDMA 的非对称带宽转发。
- 低延迟推理解码:采用纯 RDMA 技术,适合对延迟敏感的推理解码场景。
- 通信与计算重叠:通过 Hook 方法实现通信与计算并行,提升整体利用率。
- 灵活资源管理:允许用户控制 SM 使用数量,适应不同负载需求。
- 网络配置优化:支持 InfiniBand 网络流量隔离,防止干扰。
DeepEP 项目地址
- Github 仓库:https://github.com/deepseek-ai/DeepEP
DeepEP 性能表现
- 高吞吐量内核:在 H800 GPU 和 CX7 InfiniBand 400 Gb/s 网络下,内节点通信分发与合并带宽分别达到 153 GB/s 和 158 GB/s;跨节点通信带宽为 43-47 GB/s。
- 低延迟内核:在 8 个专家情况下,分发与合并延迟分别为 163 微秒和 318 微秒;在 256 个专家时,延迟分别为 194 微秒和 360 微秒。
- 系统兼容性:支持 InfiniBand 和 RoCE 网络,需 Hopper 架构 GPU、Python 3.8、CUDA 12.3 和 PyTorch 2.1 及以上版本。
DeepEP 系统要求
- 硬件要求:
- 支持 Hopper 架构的 GPU(如 H100、H800)。
- 需要支持 GPUDirect RDMA 的设备。
- 节点内通信需 NVLink,节点间通信需 RDMA 网络。
- 软件要求:
- Python 3.8 及以上版本。
- CUDA 12.3 及以上版本。
- PyTorch 2.1 及以上版本。
- 需安装修改版 NVSHMEM。
- 推荐安装 GDRCopy v2.4 及以上版本。
- 网络要求:
- 主要支持 InfiniBand,兼容 RoCE。
- 支持虚拟通道(VL)流量隔离。
- 其他要求:
- 容器环境中需加载 gdrdrv 模块。
- 设置环境变量如 NVSHMEM_DIR。
DeepEP 应用场景
- 大规模模型训练:适用于 MoE 模型训练,提升效率。
- 推理任务:降低延迟,提高吞吐量。
- 高性能计算:支持多种硬件平台,优化通信性能。
- 智能客服:提升响应速度与服务效率。
- 金融领域:用于风险评估与自动化报告生成。
发表评论 取消回复