【LLM】DeepSeek开源技术汇总

note

一、FlashMLA:MLA解码内核
二、DeepEP:针对MoE和EP的通信库
三、DeepGEMM:FP8 通用矩阵乘法(GEMM)库
四、DualPipe、EPLB:双向管道并行算法
五、3FS:一种高性能分布式文件系统

文章目录

  • note
  • 一、FlashMLA:MLA解码内核
  • 二、DeepEP:针对MoE和EP的通信库
  • 三、DeepGEMM:FP8 通用矩阵乘法(GEMM)库
  • 四、DualPipe、EPLB:双向管道并行算法
  • 五、3FS:一种高性能分布式文件系统
  • 附:LLM Infra资料
  • Reference

一、FlashMLA:MLA解码内核

DeepSeek开源周第一天-FlashMLA

链接:https://github.com/deepseek-ai/FlashMLA

FlashMLA 是一款高效的 MLA 解码内核,专为 Hopper GPU 优化,适用于变长序列服务。

在 H800 SXM5 上,使用 CUDA 12.6 时,内存受限配置下可实现高达 3000 GB/s 的带宽,计算受限配置下可达 580 TFLOPS 的算力。

二、DeepEP:针对MoE和EP的通信库

DeepSeek开源周第二天-DeepEP

链接:https://github.com/deepseek-ai/DeepEP

DeepEP 是一个针对混合专家(MoE)和专家并行(EP)的通信库,提高GPU内核之间的吞吐量并且降低延时,同时支持低精度操作(例如:FP8)。

但注意,依然仅支持Hopper GPU(例如:H100、H800等)。

  • 为了与DeepSeek-V3论文中提出的组限制门控算法保持一致,DeepEP 提供了一组针对非对称域带宽转发(例如将数据从 NVLink 域转发到 RDMA 域)进行优化的内核。这些内核提供高吞吐量,使其适合训练和推理预填充任务。此外,它们还支持 SM(流式多处理器)数量控制。
  • 对于延迟敏感的推理解码,DeepEP 包含一组具有纯 RDMA 的低延迟内核,以最大限度地减少延迟。该库还引入了一种基于钩子的通信计算重叠方法,该方法不占用任何 SM 资源。

三、DeepGEMM:FP8 通用矩阵乘法(GEMM)库

DeepSeek 开源周第三天(2025年2 月26 日)发布 DeepGEMM,为 DeepSeek-V3 打造的 FP8 通用矩阵乘法(GEMM)库。支持标准的 GEMM 计算,还能高效处理专家混合(Mix-of-Experts,MoE)架构的计算需求

链接:https://github.com/deepseek-ai/DeepGEMM

四、DualPipe、EPLB:双向管道并行算法

DeepSeek开源周第四天-DualPipe、EPLB 话不多说,直接上链接:
https://github.com/deepseek-ai/DualPipe
https://github.com/deepseek-ai/eplb

核心亮点:

  • DualPipe:双向流水线并行算法:DualPipe通过创新的流水线设计,让前向传播和反向传播的计算任务可以在独立的管道中并行执行,大幅提高计算效率。
  • 完全计算-通信重叠:DualPipe不仅能并行计算,还能实现计算和通信阶段的完美重叠,极大减少了GPU的空闲时间。
  • 高效的内存使用与低气泡时间:与传统方法相比,DualPipe显著减少了内存占用,并优化了流水线气泡问题,使得大规模分布式训练更加高效。

五、3FS:一种高性能分布式文件系统

DeepSeek开源周第五天-3FS,最后一天deepseek对存储下手啊!

链接:https://github.com/deepseek-ai/3FS

3FS,Fire-Flyer File System,是一种高性能分布式文件系统,利用现代SSD 和 RDMA 网络带全宽的并行文件系统,解决AI训练和推理存储问题。

峰值吞吐量:180个存储节点,每个存储节点配备2×200Gbps InfiniBand网卡和十六个14TiB NVMe SSD。测试使用大约500多个客户端节点,每个客户端节点配置了1x200Gbps InfiniBand网卡,最终的聚合读取吞吐量达到了约6.6 TiB/s,如图2。

排序性能:25个测试存储节点,对110.5 TiB的数据进行排序,分布在8192个分区中,耗时30分钟14秒完成,平均吞吐量为3.66 TiB/min,如图3。

KVCache:KVCache的峰值吞吐量达到了40 GiB/s,如图4。

附:LLM Infra资料

[1] Attention is All you Need: https://proceedings.neurips.cc/paper/2017/hash/3f5ee243547dee91fbd053c1c4a845aa-Abstract.html
[2] ELMo: https://arxiv.org/abs/1802.05365
[3] MoE: https://arxiv.org/abs/1701.06538
[4] GShard: https://arxiv.org/abs/2006.16668
[5] MeshTensor: https://proceedings.neurips.cc/paper/2018/hash/3a37abdeefe1dab1b30f7c5c7e581b93-Abstract.html
[6] Gopher: https://arxiv.org/abs/2112.11446
[7] Chinchilla: https://arxiv.org/abs/2203.15556
[8] FlexFlow: https://proceedings.mlsys.org/paper_files/paper/2019/hash/b422680f3db0986ddd7f8f126baaf0fa-Abstract.htm
[9] GPipe: https://proceedings.neurips.cc/paper_files/paper/2019/hash/093f65e080a295f8076b1c5722a46aa2-Abstract.htm
[10] Parameter Server: https://proceedings.neurips.cc/paper/2014/hash/1ff1de774005f8da13f42943881c655f-Abstract.html
[11] Oneflow: https://arxiv.org/abs/2110.15032
[12] M6: https://arxiv.org/abs/2103.00823
[13] GLM: https://arxiv.org/abs/2210.02414
[14] Pangu-alpha: https://arxiv.org/abs/2104.12369
[15] PatrickStar: https://arxiv.org/abs/2108.05818
[16] FasterTransformers(FT): https://github.com/NVIDIA/FasterTransformer
[17] TurboTransformers: https://github.com/Tencent/TurboTransformers
[18] ORCA: https://www.usenix.org/conference/osdi22/presentation/yu
[19] Paged Attention: https://dl.acm.org/doi/abs/10.1145/3600006.3613165
[20] text-generation-inference: https://github.com/huggingface/text-generation-inference
[21] LMDelopyer: https://github.com/InternLM/lmdeploy
[22] vLLM: https://github.com/vllm-project/vllm

Reference

[1] FP8 训练的挑战及最佳实践,https://developer.nvidia.com/zh-cn/blog/fp8-challenges-best-practices/
[2] https://zhuanlan.zhihu.com/p/708594043
[3] DeepSeek开源周 Day03:从DeepGEMM看大模型算力提速的矩阵乘法
[4] DeepSeek开源周 Day04:从DualPipe聊聊大模型分布式训练的并行策略

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

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

相关文章

单例模式——c++

一个类,只能有1个对象 (对象在堆空间) 再次创建该对象,直接引用之前的对象 so构造函数不能随意调用 so构造函数私有 so对象不能构造 如何调用私有化的构造函数: 公开接口调用构造函数 调用构造函数:singleTon instance; 但…

lqb官方题单-速成刷题清单(上) - python版

预计3月5日 Wednesday 前完成 【2025年3月1日,记】题目太简单了,3月3日前完成 蓝桥杯速成刷题清单(上) https://www.lanqiao.cn/problems/1216/learning/?problem_list_id30&page1 替换题号1216 目录 进度题解和碎碎念1. 排…

虚拟化园区网络部署指南

《虚拟化园区网络部署指南》属于博主的“园区网”专栏,若想成为HCIE,对于园区网相关的知识需要非常了解,更多关于园区网的内容博主会更新在“园区网”专栏里,请持续关注! 一.前言 华为CloudCampus解决方案基于智简网络…

Java数据结构第十五期:走进二叉树的奇妙世界(四)

专栏:Java数据结构秘籍 个人主页:手握风云 目录 一、二叉树OJ练习题(续) 1.1. 二叉树的层序遍历 1.2. 二叉树的最近公共祖先 1.3. 从前序与中序遍历序列构造二叉树 1.4. 从中序与后序遍历序列构造二叉树 1.5. 根据二叉树创建…

ISP 常见流程

1.sensor输出:一般为raw-OBpedestal。加pedestal避免减OB出现负值,同时保证信号超过ADC最小电压阈值,使信号落在ADC正常工作范围。 2. pedestal correction:移除sensor加的基底,确保后续处理信号起点正确。 3. Linea…

Java异常

一,Java异常概述 1.异常概述: 异常:在我们程序运行过程中出现的非正常情况 在开发中,即使我们的代码写的很完善,也有可能由于一些外因(用户输入有误,文件被删除,网络问题&#xff…

Linux下的网络通信编程

在不同主机之间,进行进程间的通信。 1解决主机之间硬件的互通 2.解决主机之间软件的互通. 3.IP地址:来区分不同的主机(软件地址) 4.MAC地址:硬件地址 5.端口号:区分同一主机上的不同应用进程 网络协议…

Metal 学习笔记五:3D变换

在上一章中,您通过在 vertex 函数中计算position,来平移顶点和在屏幕上移动对象。但是,在 3D 空间中,您还想执行更多操作,例如旋转和缩放对象。您还需要一个场景内摄像机,以便您可以在场景中移动。 要移动…

数据集笔记:新加坡LTA MRT 车站出口、路灯 等位置数据集

1 MRT 车站出口 data.gov.sg (geojson格式) 1.1 kml格式 data.gov.sg 2 路灯 data.govsg ——geojson data.gov.sg——kml 版本 3 道路摄像头数据集 data.gov.sg 4 自行车道网络 data.gov.sg 5 学校区域 data.gov.sg 6 自行车停车架&#xff…

【弹性计算】弹性裸金属服务器和神龙虚拟化(一):功能特点

弹性裸金属服务器和神龙虚拟化(一):功能特点 特征一:分钟级交付特征二:兼容 VPC、SLB、RDS 等云平台全业务特征三:兼容虚拟机镜像特征四:云盘启动和数据云盘动态热插拔特征五:虚拟机…

发展中的脑机接口:SSVEP特征提取技术

一、简介 脑机接口(BCI)是先进的系统,能够通过分析大脑信号与外部设备之间建立通信,帮助有障碍的人与环境互动。BCI通过分析大脑信号,提供了一种非侵入式、高效的方式,让人们与外部设备进行交流。BCI技术越…

EasyRTC:支持任意平台设备的嵌入式WebRTC实时音视频通信SDK解决方案

随着互联网技术的飞速发展,实时音视频通信已成为各行各业数字化转型的核心需求之一。无论是远程办公、在线教育、智慧医疗,还是智能安防、直播互动,用户对低延迟、高可靠、跨平台的音视频通信需求日益增长。 一、WebRTC与WebP2P:实…

为AI聊天工具添加一个知识系统 之127 详细设计之68 编程 核心技术:Cognitive Protocol Language 之2

问题 Q1396、根据我们的讨论,我前面给出的文字表述在用词准确性上以及完整性(忽略细节) 您觉得有问题吗?有用词错误和 缺项的问题吗 Q1397、请对具体术语的数学定义或工程实现方案进行深度扩展说明 Q1398、 请为全部映射关系提供…

ELK接入SpringBoot【Docker Compose】

安装Docker-Compose curl -L https://github.com/docker/compose/releases/download/1.17.1/docker-compose-uname -s-uname -m -o /usr/local/bin/docker-compose 随便找个地,创建docker-compose.yml文件,把这坨文本复制进去 version: 3 services:el…

基于javaweb的SSM+Maven幼儿园管理系统设计和实现(源码+文档+部署讲解)

技术范围:SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容:免费功能设计、开题报告、任务书、中期检查PPT、系统功能实现、代码编写、论文编写和辅导、论…

NAT 代理服务 内网穿透

🌈 个人主页:Zfox_ 🔥 系列专栏:Linux 目录 一:🔥 NAT 技术背景二:🔥 NAT IP 转换过程三:🔥 NAPT四:🔥 代理服务器🦋 正向…

Apache IoTDB 树表双模型直播回顾(下)

2 月 26 日面向 Apache IoTDB 树表双模型的功能特性、适用场景、建模选择和未来规划,田原同学通过直播进行了全面解答。以下为直播讲稿(下),干货满满,建议收藏⬇️⬇️ ⚡️注意: 1. 功能演示部分请直接查看…

LabVIEW中交叉关联算法

交叉关联算法通过统计多通道信号间的相关性,抑制各通道独立的本底噪声,保留共有的有效信号成分。其数学本质为对多个通道信号进行两两相乘并累加,最终通过归一化处理得到降噪后的输出信号。 这个VI演示了如何在LabVIEW中执行信号的互相关分析…

手撸大模型-基础篇 简单线性回归模型预测房价

# NumPy Pandas Matplotlib import numpy as np import matplotlib.pyplot as plt 双特征,矩阵化 1. Min-Max 归一化及其逆操作 1.1 输入数据归一化 def normalize1(sample, data): max_value np.max(data) min_value np.min(data) return (samp…

使用UA-SPEECH和TORGO数据库验证自动构音障碍语音分类方法

使用UA-SPEECH和TORGO数据库验证自动构音障碍语音分类方法 引言 原文:On using the UA-Speech and TORGO databases to validate automatic dysarthric speech classification approaches 构音障碍简介 构音障碍是一种由于脑损伤或神经疾病(如脑瘫、肌萎缩侧索硬化症、帕金森…