Deepseek开源周第二天:DeepEP发布
前言
上周deepseek宣布,将在本周陆续发布五个开源项目,这些库已经在生产环境中经过了记录、部署和实战测试。
原译文为:
第0天:为#开源周热身!
我们是一个小小的团队 @deepseek_ai 在探索AGI。
从下周开始,我们将开源5个仓库,完全透明地分享我们虽小但真诚的进展。
这些在线服务中的不起眼的构建模块已经过记录、部署并在生产环境中经过实战考验。
作为开源社区的一部分,我们相信,每分享一行代码都会成为集体动力,加速这一旅程。
每日解锁即将来临。没有象牙塔——只有纯粹的车库能量和社区驱动的创新。
第二天
今天发布了一个名为 DeepEP
的项目,截止发稿前,已有 4.1K 的 star
。
github地址:https://github.com/deepseek-ai/DeepEP
在当今人工智能领域,大规模模型的训练和推理已经成为推动技术进步的核心动力。
然而,随着模型规模的不断增大,如何高效地利用计算资源并优化通信效率成为了亟待解决的问题。
今天,DeepSeek 团队开源了一个名为 DeepEP 的高效专家并行通信库,为这一领域带来了新的突破。
什么是 DeepEP?
DeepEP 是一个专为混合专家模型(Mixture-of-Experts, MoE)和专家并行(Expert Parallelism, EP)设计的通信库。
通过优化 GPU 之间的通信,实现了高吞吐量和低延迟的全互连通信(all-to-all communication),这种通信方式在 MoE 模型中被广泛用于任务分配(dispatch)和结果合并(combine)。
为什么需要 DeepEP?
在传统的分布式训练中,模型通常被分割成多个部分,分布在不同的计算节点上。
然而,MoE 模型的特殊性在于,它需要在不同的专家(experts)之间动态分配任务,这就要求通信库能够高效地处理大规模数据的传输和同步。
DeepEP 正是为了解决这一问题而设计的,它通过优化 NVLink(NVIDIA 的高速互连技术)和 RDMA(远程直接内存访问)通信,显著提高了通信效率。
DeepEP 的核心技术
- 高吞吐量与低延迟的 GPU 内核
DeepEP 提供了针对 MoE 模型的高性能 GPU 内核。
这些内核支持低精度操作(如 FP8),能够有效减少通信数据量。
在测试中,DeepEP 在 H800 GPU 上实现了高达 153 GB/s 的 NVLink 带宽和 46 GB/s 的 RDMA 带宽,显著优于传统方法。
- 异构带宽优化
DeepEP
针对 NVLink
和 RDMA
的异构带宽进行了优化。
例如,在节点内通信时,它充分利用 NVLink
的高速特性;而在节点间通信时,则通过 RDMA
实现高效传输。
这种优化使得 DeepEP
在大规模分布式训练中表现出色。
- 低延迟内核
除了高吞吐量内核,DeepEP
还提供了一组低延迟内核,专门用于推理解码阶段。
这些内核通过纯 RDMA 通信,将延迟降低到微秒级别,例如在 128 个专家的场景下,延迟仅为 192 微秒。
- 通信与计算重叠
DeepEP
引入了一种基于钩子(hook)的通信与计算重叠方法。
这种方法允许通信在后台进行,而不会占用 GPU 的流处理器(SM)资源,从而实现高效的资源利用。
DeepEP 的应用场景
- 大规模模型训练
在训练阶段,DeepEP
的高吞吐量内核能够快速完成任务分配和结果合并,显著加速模型的收敛速度。
- 推理预填充
在推理阶段,DeepEP
的低延迟内核能够高效处理输入数据的分发和结果的合并,从而提高推理效率。
- 实时推理
DeepEP
的低延迟特性使其非常适合实时推理场景,例如自然语言处理中的对话系统或图像识别中的实时分析。
总结
DeepEP
的开源为大规模模型的训练和推理带来了新的可能性。
它不仅优化了通信效率,还通过低延迟内核和通信计算重叠技术,显著提升了系统的整体性能。
随着人工智能模型规模的不断增大,DeepEP
这样的高效通信库将成为推动技术进步的关键力量。
我们将持续关注接下来几天的项目发布,为读者带来第一手的技术资讯。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。