智能体架构手记 9小时前
DeepSeek开源周-第三天:DeepGEMM
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_font3.html

 

约 300 行代码,啃下深度学习里最重的那块骨头。

DeepSeek 开源周的前两天,我们先后看到了 FlashMLA 和 DeepEP,一个优化注意力计算,一个优化专家之间的通信。

第三天,DeepSeek 把镜头对准了深度学习里最基础、也最 " 烧资源 " 的一个操作:矩阵乘法。

这一天发布的库叫 DeepGEMM,一个高效的通用矩阵乘法库(GEMM)。它支持稠密计算和 MoE 计算,仅用约 300 行代码,就实现了显著的加速效果。

这篇文章会讲清楚:GEMM 为什么重要、DeepGEMM 做了什么、它和 DeepSeek-V3 的混合精度训练有什么关系,最后附上 GitHub 地址。

GEMM 是 General Matrix Multiplication,也就是 " 通用矩阵乘法 " 的缩写。

简单说,神经网络里的大部分层,无论是注意力里的投影,还是前馈网络里的线性变换,本质上都是在做一个大矩阵乘以另一个大矩阵。

所以矩阵乘法有两个特点:

它是大多数深度学习技术的核心操作之一;

它也是计算开销最大的部分之一。

这意味着:只要把矩阵乘法做快一点,整个模型的训练和推理,都会跟着受益。矩阵乘法,是最值得 " 死磕 " 的地方。

DeepGEMM 是一个高效的通用矩阵乘法库,有几个突出的特点:

稠密和 MoE 都支持。既能处理普通的稠密模型计算,也能处理 MoE(混合专家)架构里的计算。结合前一天的 DeepEP,你会发现:MoE 的通信有了 DeepEP,MoE 的计算有了 DeepGEMM,两块拼图正在被逐步补齐。

代码极其精简。仅用约 300 行代码,就实现了显著的加速效果。这在底层高性能计算库里相当少见:核心逻辑足够短,读起来、学起来、改起来的门槛,都比动辄数万行的库低得多。

来自真实的训练实践。DeepGEMM 最早在 DeepSeek-V3 的论文《DeepSeek-V3 Technical Report》中提出,它不是一个 " 为开源而写 " 的玩具,而是 DeepSeek 自己训练大模型时用到的核心组件。

DeepGEMM 是 DeepSeek-V3 混合精度训练策略的重要组成部分。

在这个策略里,不同的数据使用不同的精度:

这背后的逻辑很朴素:该省的地方大胆省,该稳的地方稳住。

不过,精度越低,越容易出现数值误差。要让 FP8 的矩阵乘法既快又准,需要额外的设计。从仓库说明来看,DeepGEMM 在这方面采取了两项做法:

细粒度缩放:通俗地说,不是整张大矩阵共用一把 " 尺子 ",而是分成更小的块,各自校准,以减小低精度带来的误差;

CUDA 核心的两级累加:用来弥补 FP8 张量核心累加不够精确的问题。

项目在开源之后仍在持续更新,后续版本在支持的精度、算子范围和性能上都有扩展。具体支持哪些硬件、哪些精度,请以仓库最新说明为准。

DeepGEMM 官方仓库:

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

开源周往期项目:

第一天 FlashMLA:https://github.com/deepseek-ai/FlashMLA

第二天 DeepEP:https://github.com/deepseek-ai/DeepEP

如果你想入门,建议先通读 DeepGEMM 的 README,再对着核心代码读一遍。代码量小,是少有的 " 一个下午就能看个大概 " 的高性能计算库。

抓住最重的那一块,收益最大。矩阵乘法占了深度学习计算的大头,把它优化好,比在边角处修修补补有效得多。

" 少 " 也是一种能力。约 300 行代码做出显著加速,说明好的底层设计,不一定要靠堆砌代码。简洁的实现,更容易被理解、复现和改进。

精度是可以 " 精打细算 " 的。FP8、BF16 各司其职,用最低的精度完成能完成的事,再用额外的设计把误差兜住。这正是混合精度训练的精髓。

回到开源周的第三天:DeepGEMM 看起来是一个很 " 底层 " 的库,但它碰的是整个深度学习里最基础、最耗资源的操作。

前两天,我们看到注意力和通信被优化;

第三天,计算本身也被打磨得又快又简洁。

一块块底层拼图,正在合成一套完整的高效训练与推理方案。

下一篇:DeepSeek 开源周 - 第四天:并行优化策略,欢迎关注,持续更新。

智客推

智客推

ZAKER 智客推 GEO | AI 时代的品牌认知解决方案

一起剪

一起剪

ZAKER旗下免费视频剪辑工具

相关文章
评论
没有更多评论了
取消

登录后才可以发布评论哦

打开小程序可以发布评论哦

12 我来说两句…
打开 ZAKER 参与讨论