deepseek开源资料汇总

 参考:DeepSeek“开源周”收官,连续五天到底都发布了什么?

目录

一、首日开源-FlashMLA

二、Day2 DeepEP

三、Day3 DeepGEMM

四、Day4 DualPipe & EPLB

五、Day5 3FS & Smallpond

总结


一、首日开源-FlashMLA

多头部潜在注意力机制(Multi-head Latent Attention)

https://github.com/deepseek-ai/FlashMLA (CUDA)

这是专为英伟达Hopper GPU(H100)优化的高效MLA解码内核,专为处理可变长度序列设计。

在自然语言处理等任务里,数据序列长度不一,传统处理方式会造成算力浪费。而FlashMLA如同智能交通调度员,能依据序列长度动态调配计算资源。例如在同时处理长文本和短文本时,它可以精准地为不同长度的文本分配恰当的算力,避免 “大马拉小车” 或资源不足的情况。发布6小时内,GitHub上收藏量突破5000次,被认为对国产GPU性能提升意义重大。

具体讲解:【DeepSeek开源周】Day 1:FlashMLA 学习笔记_自然语言处理_蓝海星梦-DeepSeek技术社区

  • 传统的MHA机制

  • DeepSeek-V3的MLA机制

MLA 是多头部潜在注意力机制(Multi-head Latent Attention),其本质是对KV有损压缩,提高存储信息密度的同时尽可能保留关键细节。 它的核心原理是对注意力键(Key)和值(Value)进行低秩压缩,使用两个线性层和来代替一个大的 Key/Value 投影矩阵,将输入投影到一个低维空间,然后将其投影回原始维度,从而减少存储和计算量。此外,MLA 还可对查询(Query)进行低秩压缩,以进一步减少激活内存。

针对MLA与MHA的通俗解释

MLA(Multi-head Latent Attention)和 MHA(Multi-Head Attention)都可以用来实现注意力机制,但它们并不是完全并行的“思考方式”选择,而是针对不同目标优化的设计。

我们可以用图书馆查阅的比喻来理解两者的核心差异:

  • MHA 的思考方式:想象你在一个传统的巨型图书馆查阅资料,每本书(每个注意力头)都完整保留所有原始内容(完整 K/V 缓存),书架按主题(头数 h)严格分区。查阅时每次需要回答问题(计算注意力),必须跑到每个主题区(每个头)翻遍对应书架的所有书籍(加载全部 K/V)

  • MLA 的思考方式:更像是现代化数字图书馆,书籍压缩归档。将相似主题的书籍(h 个头)打包成精华合辑(若干组潜在状态),只保留核心摘要(潜在 K/V),同时为每个合辑建立关键词标签(潜在变量),实时更新内容概要。查阅时先通过关键词标签(潜在状态)定位相关合辑(组),快速浏览摘要(全局注意力),必要时调取合辑内的原始书籍(局部注意力),但频次大幅降低。

相比之下,MHA方式中每个主题区存在重复内容,且随着藏书量增加(序列变长),找书耗时将会快速增长(O(n²)复杂度),这样造成了空间浪费和效率的低下。而MLA找书时间从翻遍全馆变为先看目录再精准查阅(复杂度从降为 O(n) 主导),显著提升了查找效率。

二、Day2 DeepEP

开源EP通信库

https://github.com/deepseek-ai/DeepEP(CUDA)

博客讲解:【DeepSeek开源周】Day 2:DeepEP 学习笔记_开源_蓝海星梦-DeepSeek技术社区

DeepEP是首个用于MoE(混合专家模型)训练和推理的开源EP通信库。MoE模型训练和推理中,不同专家模型需高效协作,这对通信效率要求极高。DeepEP支持优化的全对全通信模式,就像构建了一条顺畅的高速公路,让数据在各个节点间高效传输。

它还原生支持FP8低精度运算调度,降低计算资源消耗,并且在节点内和节点间都支持NVLink和RDMA,拥有用于训练和推理预填充的高吞吐量内核以及用于推理解码的低延迟内核。简单来说,它让MoE模型各部分间沟通更快、消耗更少,提升了整体运行效率 。

在 DeepSeek‐V3 的 MoE 模块中,主要包含两类专家:

  • 路由专家(Routed Experts):每个 MoE 层包含 256 个路由专家,这些专家主要负责处理输入中某些特定、专业化的特征。

  • 共享专家(Shared Expert):每个 MoE 层中还有 1 个共享专家,用于捕捉通用的、全局性的知识,为所有输入提供基本的特征提取支持。

token传入MoE时的处理流程:

  • 计算得分:首先,经过一个专门的 Gate 网络,该网络负责计算 token 与各个路由专家之间的匹配得分。

  • 选择专家:基于得分,Gate 网络为每个 token 选择 Top-K 个最合适的路由专家(DeepSeek‐V3 中通常选择 8 个)

  • 各自处理:被选中的专家各自对 token 进行独立处理,产生各自的输出。

  • 合并输出:最终,根据 Gate 网络给出的权重加权聚合这些专家的输出,再与共享专家的输出进行融合,形成当前 MoE 层的最终输出表示。

三、Day3 DeepGEMM

矩阵乘法加速库

https://github.com/deepseek-ai/DeepGEMM(python)

博客:【DeepSeek开源周】Day 3:DeepGEMM 学习笔记_学习_蓝海星梦-DeepSeek技术社区

矩阵乘法加速库,为V3/R1的训练和推理提供支持。通用矩阵乘法是众多高性能计算任务的核心,其性能优化是大模型降本增效的关键。DeepGEMM采用了DeepSeek-V3中提出的细粒度scaling技术,仅用300行代码就实现了简洁高效的FP8通用矩阵乘法

它支持普通GEMM以及专家混合(MoE)分组GEMM,在Hopper GPU上最高可达到1350+ FP8 TFLOPS(每秒万亿次浮点运算)的计算性能,在各种矩阵形状上的性能与专家调优的库相当,甚至在某些情况下更优,且安装时无需编译,通过轻量级JIT模块在运行时编译所有内核。

  1. 核心亮点

  • FP8 低精度支持:DeepGEMM 最大的特色在于从架构上优先设计为 FP8 服务。传统GEMM库主要优化FP16和FP32,而DeepGEMM针对FP8的特殊性进行了优化设计。

  • 极致性能与极简核心实现:DeepGEMM在NVIDIA Hopper GPU上实现了高达1350+ FP8 TFLOPS的计算性能,同时其核心代码仅有约300行

  • JIT 即时编译:DeepGEMM 不是预先编译好所有可能配置的内核,而是利用 JIT 在运行时生成最佳内核。例如,根据矩阵大小、FP8尺度等参数,JIT 会即时优化指令顺序和寄存器分配。

  • 传统矩阵乘法 vs. DeepGEMM算法

特性传统矩阵乘法DeepGEMM算法
计算方式逐元素顺序计算,无并行加速利用GPU并行计算,分块处理,使用张量核心等优化
计算速度慢,尤其在大规模矩阵时效率低下极快,能在短时间内完成大规模矩阵乘法
内存使用内存占用高,可能面临内存不足问题内存管理高效,避免内存瓶颈
适用场景适用于小型或简单矩阵运算场景专为大规模矩阵运算设计,如深度学习模型训练和推理

四、Day4 DualPipe & EPLB

DualPipe:https://github.com/deepseek-ai/DualPipe(python)

EPLB:https://github.com/deepseek-ai/EPLB(python)

博文:https://deepseek.csdn.net/67da0cb5807ce562bfe34746.html

DualPipe是一种用于V3/R1训练中计算与通信重叠的双向管道并行算法。以往的管道并行存在 “气泡” 问题,即计算和通信阶段存在等待时间,造成资源浪费。DualPipe通过实现 “向前” 与 “向后” 计算通信阶段的双向重叠,将硬件资源利用率提升超30%。

EPLB则是一种针对V3/R1的专家并行负载均衡器。基于混合专家(MoE)架构,它通过冗余专家策略复制高负载专家,并结合启发式分配算法优化GPU间的负载分布,减少GPU闲置现象。

五、Day5 3FS & Smallpond

https://github.com/deepseek-ai/3FS(C++)

https://github.com/deepseek-ai/smallpond (python)

博文:https://deepseek.csdn.net/67db6b09b8d50678a24ed021.html

DeepSeep开源了面向全数据访问的推进器3FS,也就是Fire-Flyer文件系统。它是一个专门为了充分利用现代SSD和RDMA网络带宽而设计的并行文件系统,能实现高速数据访问,提升AI模型训练和推理的效率。

此外,DeepSeek还开源了基于3FS的数据处理框架Smallpond,它可以进一步优化3FS的数据管理能力,让数据处理更加方便、快捷。

总结

在 2025 年 2 月 24 日至 28 日的 DeepSeek 开源周期间,DeepSeek 开源了五个核心项目,这些项目涵盖了 AI 开发的计算优化、通信效率和存储加速等关键领域,共同构成了一个面向大规模 AI 的高性能基础设施。

  • FlashMLA:针对 NVIDIA Hopper GPU 优化的多头线性注意力解码内核,显著提升了推理效率,支持实时翻译和长文本处理。

  • DeepEP:专为混合专家模型(MoE)设计的通信库,通过优化节点间数据分发与合并,大幅提升了训练速度。

  • DeepGEMM:基于 FP8 的高效矩阵乘法库,专为 MoE 模型优化,显著提升了大规模矩阵运算效率。

  • DualPipe & EPLB:创新的双向流水线并行算法和动态负载均衡工具,优化了资源利用率,提升了并行训练效率。

  • 3FS & Smallpond:高性能分布式文件系统,支持 RDMA 网络和 SSD 存储,解决了海量数据的高速存取与管理问题。

参考:

https://devpress.csdn.net/user/Eternity__Aurora

https://github.com/orgs/deepseek-ai/repositories?type=all

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

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

相关文章

【C++ Qt】认识Qt、Qt 项目搭建流程(图文并茂、通俗易懂)

每日激励:“不设限和自我肯定的心态:I can do all things。 — Stephen Curry” 绪论​: 本章将开启Qt的学习,Qt是一个较为古老但仍然在GUI图形化界面设计中有着举足轻重的地位,因为它适合嵌入式和多种平台而被广泛使用…

AI应用 Markdown 渲染对比与原生实现方案

DeepSeek、豆包、腾讯元宝、ChatGPT 渲染实现对比表 产品解析方式渲染引擎/库UI 组件架构Markdown支持范围流程图/导图支持扩展架构及裁剪流式解析渲染DeepSeek原生解析(非WebView)采用 CommonMark 标准解析器(推测使用 Markwon 库&#xff…

Ubuntu20.04系统安装,使用系统盘安装

1、系统安装 Ubuntu20.04系统安装,使用系统盘安装 查看ubuntu系统版本 lsb_release -a:显示发行版名称、版本号及代号 (base) rootai-System-Product-Name:/media/ai/wh/clash-for-linux-master# lsb_release -a No LSB modules are available. Distri…

(自用)Java学习-5.19(地址管理,三级联动,预支付)

1. 地址管理模块 地址展示 前端:通过 showAddress() 发起 Ajax GET 请求,动态渲染地址列表表格,使用 #{tag}、#{name} 等占位符替换真实数据。 后端: 控制器层调用 AddressService,通过 AddressMapper 查询用户地址数…

Spring 循环依赖:从原理到解决方案的全面解析

Spring 循环依赖:从原理到解决方案的全面解析 一、循环依赖的定义与分类 1. 什么是循环依赖? 在 Spring 框架中,循环依赖指的是多个 Bean 之间形成了依赖闭环。例如: Bean A 依赖 Bean BBean B 依赖 Bean CBean C 又依赖 Bean…

n 阶矩阵 A 可逆的充分必要条件是 ∣ A ∣ ≠ 0

n 阶矩阵 A 可逆的充分必要条件是 ∣ A ∣ ≠ 0 |A| \neq 0 ∣A∣0 的几何意义 1. 行列式的几何意义回顾 行列式 ∣ A ∣ |A| ∣A∣(或 det ⁡ ( A ) \det(A) det(A))表示矩阵 A A A 所对应的线性变换对空间的体积缩放因子: ∣ A ∣ &…

Rockey Linux 安装ffmpeg

1.环境准备 Rockey linux 9.2 ffmpeg 静态资源包 这个是我自己的: https://download.csdn.net/download/liudongyang123/90920340https://download.csdn.net/download/liudongyang123/90920340 这个是官网的 Releases BtbN/FFmpeg-Builds GitHub 以上两个资…

wordcount在集群上的测试

1.将louts.txt文件从cg计算机复制到master节点上面,存放在/usr/local/hadoop 需要输入密码:83953588abc scp /root/IdeaProjects/mapReduceTest/lotus.txt root172.18.0.2:/usr/local/hadoop /WordCountTest/input 2.将lotus.txt文件从master这台机器…

AI+制造:中小企业的低成本智能化转型

文章内容过长,可以考虑直接跳转到文章末尾查看概要图 在制造业竞争日益激烈的今天,中小企业正面临着前所未有的挑战:人力成本持续攀升、能源消耗居高不下、质量控制难度增加。与此同时,数字化转型已成为行业共识,但高…

Linux C/C++编程 —— 线程技术总结

一、线程基本概念 线程是进程内的一个执行单元,多个线程共享进程的资源(如内存、文件描述符等),但每个线程拥有自己的寄存器、栈等。与进程相比,线程的创建、切换开销较小,能更高效地利用 CPU 资源。 二、…

Femap许可证与网络安全策略

随着科技的快速发展,网络安全问题已成为各行各业关注的焦点。在电磁仿真领域,Femap作为一款领先的软件,其许可证的安全性和网络策略的重要性不言而喻。本文将探讨Femap许可证与网络安全策略的关系,确保您的电磁仿真工作能够在一个…

深度解析:SQLynx 如何筑牢数据库安全防线​

在数据驱动业务发展的时代,数据库作为企业核心资产的 “保险箱”,其安全性至关重要。一旦数据库遭遇攻击、数据泄露或被误操作,将给企业带来不可估量的损失。而 SQLynx 作为一款专注于数据库安全管理的工具,凭借其多项创新技术与功…

更新时间相差8个小时

下面的java代码在updateFill方法里面生成的modifiedTime时间是当前时间是正确的,为什么到service层testCommonFieldAutoUpdate方法里面去更新的时候modifiedTime就差8个小时呢?代码如下所示: Slf4j Component public class MpMetaObjectHand…

Windows逆向工程提升之IMAGE_TLS_DIRECTORY

公开视频 -> 链接点击跳转公开课程博客首页 -> ​​​链接点击跳转博客主页 目录 TLS的作用 TLS的实现 静态 TLS​​ 动态 TLS​​ 内部实现 回调机制 TLS Directory 的结构 TLS的作用 TLS (Thread Local Storage) 是一种用于为多线程应用程序提供线程独立存储空…

云效流水线Flow使用记录

概述 最近在频繁使用阿里云云效的几款产品,如流水线。之前写过一篇,参考云效流水线缓存问题。 这篇文章来记录更多问题。 环境变量 不管是云效流水线Flow还是应用交付AppStack(基于流水线,后文不再赘述)&#xff0…

Android中获取控件尺寸进阶方案

在Android开发中,很多场景都需要获取控件(View)的宽高信息,比如动态布局调整、动画效果实现等。然而,直接在Activity的onCreate()中调用控件的getWidth()或getHeight()`方法,得到结果却是0,因为控件还没完成布局测量。 本文总结了几种获取控件大小的实用方法,并对各方…

android 输入系统

一、输入系统的核心角色与分层架构 Android 输入系统的本质是桥梁:一端连接硬件驱动产生的原始事件,另一端将事件精准派发给应用窗口。整个过程涉及三层架构和多个关键组件,可类比为 “快递分拣系统”: 1. 硬件与内核层&#xf…

ubuntu中,c和c+程序,预编译、编译、链接和运行命令

目录 安装编译器一.c编译运行(粗暴简单)1.编写 C 程序:2. 预处理:3.编译:4. 汇编:5. 链接:6.运行 二.c编译运行(粗暴简单)1.编写 C 程序:2.预处理&#xff1a…

【FastAPI】--2.进阶教程(一)

【FastAPI】--基础教程-CSDN博客 app.get和post的参数: 参数类型说明pathstr路由路径(如 "/marks"),必填。response_modelType[T]定义响应数据的模型(如 percent),会自动校验和序列…

KT6368A通过蓝牙芯片获取手机时间详细说明,对应串口指令举例

一、功能简介 KT6368A双模蓝牙芯片支持连接手机,获取手机的日期、时间信息,可以同步RTC时钟 1、无需安装任何app,直接使用系统蓝牙即可实现 2、同时它不影响音频蓝牙,还支持一些简单的AT指令进行操作 3、实现的方式&#xff1…