DeepSeek推出DeepEP:首个开源EP通信库,让MoE模型训练与推理起飞!

今天,DeepSeek 在继 FlashMLA 之后,推出了第二个 OpenSourceWeek 开源项目——DeepEP。

作为首个专为MoE(Mixture-of-Experts)训练与推理设计的开源 EP 通信库,DeepEP 在EP(Expert Parallelism)领域迈出了重要一步,旨在为 MoE 模型提供低时延、高带宽、高吞吐的卡间和节点间通信能力。

根据测试结果,DeepEP 在节点内部的多卡通信中表现接近带宽上限,同时节点间通信效率也显著提升。

什么是EP?

在深入了解 DeepEP 之前,我们需要先理解什么是 EP。

EP 是一种专为 MoE 设计的分布式计算方法。而 MoE 是一种基于 Transformer 的模型架构,采用稀疏策略,使其相比传统的密集模型在训练时更加轻量化。在这种 MoE 神经网络架构中,每次仅使用模型中部分组件(称为“专家”)来处理输入。

这种方法具有多项优势,包括更高效的训练、更快的推理速度,即使模型规模更大依然如此。换句话说,在相同的计算资源预算下,与训练一个完整的密集模型相比,MoE 可以支持更大的模型或更大的数据集。

MoE 模型通过动态路由机制将输入分配到不同的专家子网络(Expert Sub-network),而 EP 则将这些专家子网络分配到多个计算设备上,从而显著提升大规模模型的计算效率。

四大主流分布式并行策略

目前,主流的分布式并行策略主要包括以下四种。

  1. Data Parallelism (DP)

    1. 核心:复制模型副本,分割输入数据。

    2. 优势:实现简单,计算负载均衡。

    3. 限制:显存占用高,不适用于超大规模模型。

  2. Tensor Parallelism (TP)

    1. 核心:矩阵维度切割,分布式存储参数。

    2. 优势:突破单卡显存限制。

    3. 限制:通信密集,需要高速互联。

  3. Pipeline Parallelism (PP)

    1. 核心:模型分层流水作业。

    2. 优势:支持千亿级参数部署。

    3. 限制:存在计算间隙(流水线气泡)。

  4. Expert Parallelism (EP)

    1. 核心:支持大参数的MoE模型高效推理和训练。

    2. 优势:有更好的模型切分灵活性,更加细粒度。

    3. 限制:只能在MoE模型上使用。

EP如何加速MoE模型推理?

EP 在大语言模型推理加速中的重要性源于其对 MoE 的高效切分能力。当模型采用 MoE 结构且专家数量达到数百量级(如 320 个专家)时,EP 可将不同专家分配到独立计算节点,其并行粒度与专家数量直接匹配。

相比之下,TP 依赖 Attention 层的多头机制切分(例如典型 32 头配置),在扩展到 64 卡及以上规模时,因切分维度不足(32 < 64)难以充分利用硬件资源。EP 通过专家维度的切分,TP一般按照 Attention Heads 的维度进行切分,切分出的数量只能是32的约数,使得超大规模集群(如 64+ 卡)的负载分配更均衡,从而实现更优的推理吞吐量。

DeepEP:专为 MoE 与 EP 定制的通信库

DeepEP 是一款专为 MoE 和 EP 定制的通信库,具备以下核心优势:

  1. 高效优化的 All-to-All 通信 DeepEP 提供了高效的 All-to-All 通信内核,能够显著减少数据传输的瓶颈,确保在分布式环境中不同专家之间的信息交换更加顺畅。

  2. 支持 NVLink 和 RDMA 的节点内 / 跨节点通信 DeepEP 支持 NVLink 和 RDMA 技术,能够实现节点内和跨节点的高效通信。NVLink 提供了高达 160 GB/s 的带宽,而 RDMA 则支持跨节点的低延迟数据传输,满足大规模分布式训练的需求。

  3. 高吞吐量计算核心 针对训练和推理预填充阶段,DeepEP 提供了高吞吐量的计算核心,确保在大规模数据处理时能够保持高效的计算性能。

  4. 低延迟计算核心 对于推理解码阶段,DeepEP 提供了基于 RDMA / Infiniband 的低延迟计算核心,最大限度地减少了推理延迟,适合对延迟敏感的应用场景。

  5. 原生支持 FP8 数据分发 DeepEP 原生支持 FP8 数据分发,能够在保持精度的同时减少数据传输量,进一步提升了通信效率。

  6. 灵活控制 GPU 资源 DeepEP 提供了灵活的 GPU 资源调度机制,能够实现计算与通信的高效重叠,避免资源浪费,提升整体性能。

DeepEP的性能表现

DeepEP 在节点内和跨节点通信中的性能表现显著,尤其在 NVLink 和 RDMA 混合架构下展现出高效的数据传输能力。DeepEP 在两种典型场景下的性能测试结果:

常规内核性能(NVLink 和 RDMA 转发)

  • 测试环境

    • GPU:H800(NVLink 最大带宽约 160 GB/s)

    • 网络:CX7 InfiniBand 400 Gb/s RDMA 网卡(最大带宽约 50 GB/s)

    • 配置:遵循 DeepSeek-V3/R1 预训练设置(每批次 4096 tokens,隐藏层 7168,top-4 组,top-8 专家,FP8 分发和 BF16 聚合)

  • 性能数据

    • 节点内通信接近 NVLink 最大带宽(160 GB/s),表现出极高的数据传输效率。

    • 跨节点通信在 RDMA 网络下保持稳定带宽,满足大规模分布式训练需求。

低延迟内核性能(纯 RDMA)

  • 测试环境

    • GPU:H800

    • 网络:CX7 InfiniBand 400 Gb/s RDMA 网卡(最大带宽约 50 GB/s)

    • 配置:遵循典型 DeepSeek-V3/R1 生产环境设置(每批次 128 tokens,隐藏层 7168,top-8 专家,FP8 分发和 BF16 聚合)

  • 性能数据

    • 低延迟内核在纯 RDMA 模式下实现了微秒级延迟,适合对延迟敏感的推理解码任务。

    • 即使在高并行度(#EP=256)下,RDMA 带宽仍保持稳定,确保高效的数据传输。

DeepEP的应用场景

DeepEP 适用于多种 MoE 模型的训练和推理场景,特别是在大规模分布式训练中,DeepEP 能够显著提升通信效率,减少训练时间。以下是 DeepEP 的主要应用场景:

MoE 模型训练 DeepEP 的高吞吐量计算核心和高效的 All-to-All 通信机制,能够显著加速 MoE 模型的训练过程,尤其是在多机多 GPU 环境下。

推理预填充阶段 在推理的预填充阶段,DeepEP 的高吞吐量计算核心能够快速处理大量数据,确保推理过程的高效性。

推理解码阶段 对于推理解码阶段,DeepEP 的低延迟计算核心能够最大限度地减少推理延迟,适合对实时性要求较高的应用场景。

PPIO派欧云始终专注于探索多种并行策略,不断提升推理效率,旨在为客户提供更快的推理速度和更低的计算成本。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/25533.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【数据结构】 最大最小堆实现优先队列 python

堆的定义 堆&#xff08;Heap&#xff09;是一种特殊的完全二叉树结构&#xff0c;通常分为最大堆和最小堆两种类型。 在最大堆中&#xff0c;父节点的值总是大于或等于其子节点的值&#xff1b; 而在最小堆中&#xff0c;父节点的值总是小于或等于其子节点的值。 堆常用于实…

重新审视 ChatGPT 和 Elasticsearch:第 2 部分 - UI 保持不变

作者&#xff1a;来自 Elastic Jeff Vestal 本博客在第 1 部分的基础上进行了扩展&#xff0c;介绍了基于 RAG 的搜索系统的功能齐全的 Web UI。最后&#xff0c;你将拥有一个将检索、搜索和生成过程结合在一起的工作界面&#xff0c;同时使事情易于调整和探索。 不想读完整个内…

【开源】低代码 C++程序框架,Linux多线程程序

大家好&#xff0c;欢迎来到停止重构的频道。 本期介绍我们新的C低代码框架&#xff1a;Bees&#xff0c;用于编写Linux/Unix的多线程程序。 低代码框架一般是不会对C程序下手的&#xff0c;因为C程序一般是比较复杂的程序&#xff0c;光是多线程同步就够头疼的了。 但是我们…

数据库的sql语句

本篇文章主要用来收集项目开发中&#xff0c;遇到的各种sql语句的编写。 1、根据user表的role_id字段&#xff0c;查询role表。 sql语句&#xff1a;使用JOIN连接两个表 SELECT u.*,r.rolename FROM user u JOIN role r ON u.role_id r.id WHERE u.id 1; 查询结果&#xff1a…

从零开始用react + tailwindcs + express + mongodb实现一个聊天程序(二)

1.安装mogondb数据库 参考MongoDB安装配置教程&#xff08;详细版&#xff09;_mongodb安装详细步骤-CSDN博客 安装mondbcompass数据库连接工具 参考https://www.mongodb.com/zh-cn/docs/compass/current/connect/ 2.后端服务 1.创建src文件夹 并在src文件夹下创建 index…

opencv:距离变换 cv2.distanceTransform

函数 cv2.distanceTransform() 用于计算图像中每一个非零点像素与其最近的零点像素之间的距离&#xff08;Distance Transform&#xff0c; DT算法&#xff09;,输出的是保存每一个非零点与最近零点的距离信息&#xff1b;图像上越亮的点&#xff0c;代表了离零点的距离越远。 …

单目摄像头物体深度计算基础原理

三维空间物体表面点位与其在图像中对应点之间的相互关系&#xff0c;必须建立相机成像的几何模型&#xff0c;这些几何模型参数就是相机参数&#xff0c;而相机参数的求解就是相机标定。 相机的参数矩阵包括内参和外参&#xff1a; 外参&#xff1a;决定现实坐标到摄像机坐标。…

RabbitMQ系列(一)架构解析

RabbitMQ 架构解析 RabbitMQ 是一个基于 AMQP 协议的开源消息中间件&#xff0c;其核心架构通过多组件协作实现高效、可靠的消息传递。以下是其核心组件与协作流程的详细说明&#xff1a; 一、核心组件与功能 Broker&#xff08;消息代理服务器&#xff09; RabbitMQ 服务端核…

Spring Cloud Alibaba与Spring Boot、Spring Cloud版本对应关系

一、前言 在搭建SpringCloud项目环境架构的时候&#xff0c;需要选择SpringBoot和SpringCloud进行兼容的版本号&#xff0c;因此对于选择SpringBoot版本与SpringCloud版本的对应关系很重要&#xff0c;如果版本关系不对应&#xff0c;常见的会遇见项目启动不起来&#xff0c;怪…

[Web 信息收集] Web 信息收集 — 手动收集域名信息

关注这个专栏的其他相关笔记&#xff1a;[Web 安全] Web 安全攻防 - 学习手册-CSDN博客 0x01&#xff1a;信息收集 —— 域名联系人信息 当我们知道目标的域名之后&#xff0c;我们要做的第一件事就是获取域名的注册信息&#xff0c;包括该域名的 DNS 服务器信息和注册人的联系…

基于Rook的Ceph云原生存储部署与实践指南(上)

#作者&#xff1a;任少近 文章目录 1 Ceph环境准备2 rook部署ceph群集2.1 Rook 帮助地址2.2 安装ceph2.3 获取csi镜像2.4 Master参加到osd2.5 设置默认存储 3 Rook部署云原生RBD块存储3.1 部署storageclass资源3.2 部署WordPress使用RBD3.3 WordPress访问 4 Rook部署云原生RGW…

使用Crawlee可破题js渲染采集数据

使用 Crawlee 实现自动化爬虫流程 1. Crawlee 简介 Crawlee 是一个强大的爬虫框架&#xff0c;用于快速构建和维护可靠的爬虫。它支持多种爬虫类型&#xff0c;包括基于 Cheerio 和 Playwright 的爬虫&#xff0c;能够高效处理静态和动态网页。 2. 项目目标 通过自动化脚本实…

二、IDE集成DeepSeek保姆级教学(使用篇)

各位看官老爷好&#xff0c;如果还没有安装DeepSeek请查阅前一篇 一、IDE集成DeepSeek保姆级教学(安装篇) 一、DeepSeek在CodeGPT中使用教学 1.1、Edit Code 编辑代码 选中代码片段 —> 右键 —> CodeGPT —> Edit Code, 输入自然语言可编辑代码&#xff0c;点击S…

threejs 安装教程

嗨&#xff0c;我是小路。今天主要和大家分享的主题是“threejs 安装教程”。 在当今的数字化时代&#xff0c;用户对视觉体验的要求越来越高。传统的2D网页已经无法满足所有需求&#xff0c;而三维&#xff08;3D&#xff09;图形技术则为前端开发者提供了新的方向。…

2025 软件供应链安全情报预警平台建设与实践

何为数字安全供应链情报&#xff1f; 所谓的数字供应链开源安全情报主要针对目标是开源数字应用资产。包括开源组件&#xff0c;中间件和操作系统。开源安全情报类型可以分为三大类&#xff1a; 1 第一类是传统的安全漏洞风险情报&#xff0c;开源漏洞情报数据获取主要有2种渠…

Linux:ELF文件-静动态库原理

✨✨所属专栏&#xff1a;Linux✨✨ ✨✨作者主页&#xff1a;嶔某✨✨ ELF文件 什么是编译&#xff1f;编译就是将程序源代码编译成能让CPU直接执行的机器代码 如果我们要编译一个 .c文件&#xff0c;使用gcc -c将.c文件编译为二进制文件.o &#xff0c;如果一个项目有多个.…

批量给 Word 添加或设置页眉页脚/页码

在 Word 文档中我们可以设置各种各样的页眉页脚信息&#xff0c;比如设置页码信息、在页眉页脚中插入公司的 logo 信息、联系方式信息等等。当我们有大量的文档需要设置或者修改页眉页脚的时候&#xff0c;今天介绍的方法就可以帮我们快速的完成。 使用场景 批量给 Word 文档设…

GIST框架:深度学习助力组织病理学与转录组学的空间整合分析|顶刊精析·25-02-24

小罗碎碎念 随着空间分子成像技术发展&#xff0c;单细胞空间转录组&#xff08;SCST&#xff09;数据为研究组织微环境提供了丰富信息&#xff0c;但数据质量问题和现有分析方法的局限性阻碍了深入研究。GIST框架借助预训练的组织学图像基础模型提取详细形态特征&#xff0c;…

DeepSeek入门学习

参考文档&#xff1a;DeepSeek&#xff08;人工智能企业&#xff09;_百度百科 DeepSeek-R1 凭借创新的强化学习技术实现重大突破。在极少量标注数据的基础上&#xff0c;通过深度优化的后训练阶段&#xff0c;显著提升了模型的推理能力。在数学运算、代码生成、自然语言推理等…