就在一周以前,DeepSeek官方在 X 平台上表示从本周开始,将陆续公布5个开源项目。
从周一(2月24日)到今天(2月28日),DeepSeek“开源周”也迎来了尾声。
相比OpenAI的12天直播秀,DeepSeek的5天发布,没有直播没有表演,只有充满技术术语的晦涩文档。
小编替各位把这些文档啃完后,总体感觉就是,这是一系列对如何极限压榨英伟达GPU及最大化提升AI训练效率的“说明书”,也侧面解释了,为什么DeepSeek 能把大模型做的那么有“性价比”。
我们先来看看,DeepSeek都开源了些什么项目:
-Day1-
FlashMLA:让AI模型更高效使用GPU,尤其针对英伟达H系列芯片
第一天DeepSeek就扔出了一个重磅炸弹,开源了FlashMLA。
MLA(多头潜在注意力机制)是DeepSeek已经发布的V2、V3两款模型中,最为核心的技术之一。
而FlashMLA是专门针对于英伟达Hopper GPU开发的高效MLA解码内核,专为处理可变长度序列而设计。
换而言之,FlashMLA专门针对英伟达H系列GPU产品,如H100、H800和H20等多款芯片。
据DeepSeek方面介绍,在基准测试性能表现上,FlashMLA可以使得H800达到3000GB/s内存,实现580TFLOPS(每秒浮点运算次数)计算性能。
这意味着,使用FlashMLA优化后,H800的内存带宽利用率有望进一步提高甚至突破其理论上限,在内存访问上达到极致,能让开发群体充分“压榨”英伟达H系列芯片能力,以更少的芯片实现更强的模型性能,最大化GPU价值。
GitHub地址:https://github.com/deepseek-ai/FlashMLA
相关阅读:DeepSeek“开源周”Day1:让英伟达H800性能翻两倍
-Day2-
DeepEP:让AI训练实现多线程协作,“压榨”GPU等待时间
据DeepSeek介绍,DeepEP是一个用于MoE模型训练和推理的EP通信库,它主打低延迟内核,其支持 FP8 的特性特别适合资源受限或实时性要求高的场景。
特别是在处理MoE分派和组合的通信模式上,DeepEP针对高吞吐量和低延迟的GPU内核,专门优化了MoE模型中数据路由和输出的整合过程。
MoE架构是由多个专注于垂直技能的专家模型分工协作来实现最终输出结果,训练成本和推理成本更低。
MoE(混合专家架构)和MLA均被认为是DeepSeek以低成本实现杰出表现的核心原因。
但MoE架构的缺点之一是会增加通信成本,而DeepEP通信库就是针对通信环节的优化,其特点包括:
·高效、优化的全员沟通;
·节点内和节点间均支持NVLink和RDMA;
·用于训练和推理预填充的高吞吐量内核;
·用于推理解码的低延迟内核(优化数据传输路径,类似给快递包裹规划最短路线);
·原生FP8调度支持;
·灵活的GPU资源控制,实现计算-通信重叠。
优化之后的MoE模型的通信性能,支持低精度操作(如 FP8)——用更少的内存存储数据(类似把高清电影压缩成小体积文件),让普通显卡也能跑复杂模型,并提供了针对非对称域带宽转发的内核。
这使得在分布式GPU环境中,MoE 模型的训练和推理更加高效和可扩展,尤其是在多节点集群中,能够显著降低通信开销并提高整体性能。
在资源分配上,DeepEP能根据任务量动态调节GPU的计算资源(SM 数量控制)。
在数据传输上,DeepEP优化了非对称域带宽转发(如 NVLink 到 RDMA),这使得它特别适合现代高性能计算(HPC)环境中的多节点分布式训练。
如果说传统的AI训练中,GPU跑了10个小时,4个小时在等数据、等同步,实际工作时间只有6小时。那么DeepEP,能够把等待时间压缩到1小时,GPU干活9小时,相当于多了3小时算力,真正“榨干”每一块GPU。
GitHub地址:https://github.com/deepseek-ai/DeepEP
-Day3-
DeepGEMM:将H800计算性能提升2.7倍
DeepGEMM是一个支持密集型和MoE 模型的FP8 GEMM库,可为V3/R1模型的训练和推理提供强大支持。
GEMM,即通用矩阵乘法,是线性代数中的基本运算,是科学计算、机器学习、深度学习等领域中最常见的计算操作,也是许多高性能计算任务的核心。
但由于它的计算量往往都比较大,所以GEMM的性能优化是至关重要的一点。
此次DeepSeek开源的DeepGEMM,依旧是保持了“高性能+低成本”的特性,亮点如下:
·同时支持密集布局和两种MoE(混合专家模型)布局;
·使用CUDA(统一计算架构)编写,无需编译即可安装;
·完全即时编译,即用即跑;
·专为NVIDIA Hopper张量核心设计;
·使用CUDA核心两级累加解决FP8张量核心累加不精确的问题。
DeepGEMM最大的特点就是简洁高效,仅有300行核心代码。
DeepSeek表示,虽然DeepGEMM借鉴了CUTLASS和CuTe里的一些理念,但并没有过度依赖它们的模板或代数运算。
在深度学习中,FP8(8位浮点数)可以减少存储和计算的开销,但是缺点是精度比较低,而由于精度低,就可能产生量化误差,影响模型训练的稳定性。
据DeepSeek介绍,为了解决FP8张量核心积累的精度问题,它采用了CUDA核心的两级积累(提升)方法。”
也就是利用了CUDA核心做了两次累加,先用FP8做大批量乘法,然后再做高精度汇总,以此防止误差累积。既大幅减少空间,同时又保有精度,效率也就由此提升。
性能方面,从测试结果来看,DeepGEMM计算性能最高可达1358 TFLOPS,内存宽带最高可达2668 GB/s,与英伟达基于CUTLASS 3.6的优化实现相比,速度最高提升了2.7倍。
也可以说是将GPU的性能潜力发挥到极致。
GitHub地址:https://github.com/deepseek-ai/DeepGEMM
-Day4-
优化的并行策略:给AI训练配上“高速双车道”和“交通调度员”
此次DeepSeek开源的内容是优化的并行策略,其中包括DualPipe,一种用于V3/R1训练中计算与通信重叠的双向管道并行算法;以及EPLB,一种针对V3/R1的专家并行负载均衡器。
此外,DeepSeek还公开分享了其训练和推理框架的性能分析数据,从而帮助开源社区更好地了解通信与计算重叠策略和底层实现细节。
DualPipe是一种创新性的双向流水线并行算法,专为DeepSeek-V3/R1训练体系设计,相当于给AI训练装上了“双车道高速路”。它实现了前向和后向计算-通信阶段的完全重叠,显著减少了流水线中的空闲时间("流水线气泡")。
通过对称的微批次调度,DualPipe优化了并行计算效率,在反向传播阶段并发执行前向计算,将硬件利用率提高了约30%。这种设计尤其适用于拥有数百亿到数万亿参数的模型训练,能够大幅提高计算效率。
GitHub地址:https://github.com/deepseek-ai/DualPipe
EPLB(Expert Parallelism Load Balancer)是DeepSeek推出的专家并行负载均衡器,为解决MoE模型在分布式训练和推理中的负载不平衡问题,这有点类似“交通调度员”,避免某些GPU忙死、某些GPU闲死。
EPLB通过复制高负载专家并智能地分配到不同GPU上,实现负载均衡。它包含两种负载均衡策略:层次化负载均衡和全局负载均衡。这种设计使得万卡GPU集群的利用率超过92%,有效避免了资源浪费。
GitHub地址:https://github.com/deepseek-ai/EPLB
DeepSeek还分享了来自训练和推理框架的性能分析数据,以帮助社区更好地了解通信计算重叠策略和低级实现细节,这相当于“健身教练的体测报告”,告诉开发者哪里可以优化。
这些数据通过PyTorch Profiler捕获,下载后可以直接在Chrome或Edge浏览器中打开,进行可视化分析,DeepSeek还模拟了绝对平衡的MoE 路由策略用于性能分析。
GitHub地址:https://github.com/deepseek-ai/profile-data
-Day5-
Fire-Flyer文件系统 (3FS):提升AI训练中海量数据处理效率
Fire-Flyer文件系统 (3FS)是一种利用现代SSD和RDMA网络的全部带宽的并行文件系统。
3FS 是一款高性能的分布式文件系统,旨在解决AI训练和推理工作负载带来的挑战,利用现代SSD和RDMA网络提供共享存储层,简化分布式应用程序的开发。
其核心优势在于高性能、强一致性和易用性,能够有效支持各种 AI 工作负载,包括数据准备、数据加载、检查点设置和推理缓存。
其特点有:
·180节点集群中的聚合读取吞吐量为6.6TiB/s;
·25节点集群中GraySort基准测试的吞吐量为3.66TiB/分钟;
·每个客户端节点的 KVCache 查找峰值吞吐量超过40GiB/s;
3FS 在 DeepSeek 的 V3 / R1 版本中得到广泛应用,涵盖了训练数据预处理、数据集加载、检查点保存 / 重新加载、嵌入向量搜索以及推理过程中的 KVCache 查找等关键环节。
做个类比的话,传统AI训练的文件系统货物堆放混乱,叉车来回碰撞,每天只能处理1000单;3FS系统下,则是智能机器人自动分拣,多条传送带并行发货,每天处理10万单且零错误。
GitHub地址:https://github.com/deepseek-ai/3FS
此外,DeepSeek还开源了基于3FS的数据处理框架Smallpond,其是一款构建于DuckDB和3FS之上的轻量级数据处理框架。它拥有高性能数据处理能力,可扩展至PB级数据集,并且操作简便,无需长期运行的服务。
GitHub地址:https://github.com/deepseek-ai/smallpond
此次“开源周”让怀疑DeepSeek在训练成本上“撒谎”的人噤声了。因为每个开源项目,都在向世界展示了DeepSeek极致压榨英伟达芯片的功力。
只能说,在压榨英伟达芯片、AI性能效率提高这方面,DeepSeek已经出神入化。
从GitHub上获得的星标来看,这些项目颇受欢迎,一般来说,在GitHub上获得几千星星就已经算很成功了。
截至发稿,FlashMLA已在GitHub获得超过1万星标;DeepEP的星标已有6000;DeepGEMM目前超过4100;DualPipe星标超过1900。
在Github的交流区,不少人想起了OpenAI,将DeepSeek称为“真正的OpenAI”。
OpenAI已经走上闭源之路好几年,甚至被戏称为“CloseAI”,直到DeepSeek出现,OpenAI CEO山姆·奥特曼表示,在开源/闭源的问题上,自己或许站在了历史错误的一边。
此前,他还曾经在X上发起投票,询问网友希望OpenAI的下一个开源项目是什么类型的。
不过到目前为止,这一切都还只是在空口的承诺中。
.END.
您也可以关注我们的官方微信公众号(ID:ctoutiao),给您更多好看的内容。