2025年2月28日,DeepSeek开源周迎来了第五天,也是本次活动的收官之日。自2月24日启动以来,DeepSeek团队以每天一个开源项目的节奏,陆续向全球开发者展示了他们在人工智能基础设施领域的最新成果。今天,他们发布了Fire-Flyer File System(简称3FS)和配套的数据处理框架Smallpond。这两项工具专注于解决AI训练与推理中的数据访问和处理难题,以卓越的性能和简洁的设计,为开发者提供了一套经过生产环境验证的解决方案。
开源周回顾:五天五项成果
DeepSeek开源周从2月24日開始,每日推出一项新工具,逐步构建起一个覆盖AI开发核心环节的技术链条。以下是前四天的简要回顾:
-
Day 1:FlashMLA - FlashMLA是一个专为Hopper GPU优化的高效MLA解码内核,针对变长序列处理进行了深度优化。它支持BF16数据格式,配备分页KV缓存(块大小64),在H800上的性能表现尤为突出:内存绑定场景下达到3000 GB/s,计算绑定场景下达到580 TFLOPS。这一工具为需要快速解码的AI模型提供了强有力的支持。
-
Day 2:DeepEP - DeepEP是首个开源的EP通信库,专为MoE(Mixture of Experts)模型的训练和推理设计。它支持高效的全对全通信,覆盖节点内(通过NVLink)和节点间(通过RDMA)场景,提供了高吞吐量内核用于训练和推理预填充、低延迟内核用于推理解码,以及原生FP8分派支持。此外,DeepEP还具备灵活的GPU资源控制功能,可优化计算与通信的重叠,提升大规模分布式训练的效率。
-
Day 3:DeepGEMM - DeepGEMM是一个FP8 GEMM(通用矩阵乘法)库,支持密集和MoE两种GEMM计算,广泛应用于V3/R1模型的训练和推理。它的性能在Hopper GPU上可达1350+ FP8 TFLOPS,核心逻辑仅约300行代码,采用即时编译(JIT)技术,无需复杂依赖。这种简洁而高效的设计使其在多种矩阵规模下超越了专家调优的内核。
-
Day 4:优化并行策略 - 第四天发布了三项工具:DualPipe、EPLB和性能分析数据集。DualPipe是一种双向管道并行算法,优化了V3/R1训练中的计算-通信重叠;EPLB是一个专家并行负载均衡器,针对MoE模型提升资源利用率;配套的分析工具则提供了V3/R1训练中的计算-通信重叠数据。这些工具共同助力大规模模型训练的效率提升。
这四天的成果从GPU计算优化到通信效率,再到并行策略,展现了DeepSeek在AI基础设施领域的全面布局。而今天发布的3FS和Smallpond则将焦点转向数据存储与处理,完成了这一技术拼图的最后一块。
3FS:分布式文件系统的性能标杆
Fire-Flyer File System(3FS)是一个专为AI工作负载设计的高性能分布式文件系统。它充分利用现代SSD的高速存储能力和RDMA网络的低延迟特性,构建了一个兼具高吞吐量与强一致性的共享存储层。这一系统的核心目标是为分布式应用的开发提供简洁、高效的数据访问支持,解决AI开发中数据密集型任务的瓶颈。
设计与特性
3FS的设计围绕三大特点展开:
-
解耦架构:通过将存储与计算分离,3FS允许存储节点和计算节点独立扩展。这种设计结合了数千个SSD的吞吐量和数百个存储节点的网络带宽,使得应用程序可以以无视数据位置的方式访问存储资源。
-
强一致性:3FS采用CRAQ(Chain Replication with Apportioned Queries)机制,通过链式复制和分担查询确保数据在所有节点间保持一致。这种强一致性让开发者无需担心数据同步问题,简化了应用逻辑的编写。
-
标准文件接口:基于事务型键值存储(例如FoundationDB),3FS提供了无状态的元数据服务,支持标准的文件系统接口。开发者无需学习复杂的专用API,就能像操作本地文件系统一样使用3FS。
支持的工作负载
3FS能够无缝支持AI开发中的多种场景:
- 数据准备:高效组织和管理数据分析管道的输出,支持大规模中间数据的存储与访问。
- 数据加载:通过随机访问功能,允许多个计算节点并行加载训练样本,无需额外的预取或洗牌操作。
- 检查点管理:提供高吞吐量的并行检查点保存和加载功能,满足大规模训练的需求。
- KVCache推理:作为DRAM的成本效益替代方案,3FS为推理中的键值缓存(KVCache)提供高吞吐量和大容量支持,显著降低硬件成本。
性能表现
3FS的性能数据令人印象深刻:
-
在一个由180个存储节点组成的集群中,每个节点配备2个200Gbps InfiniBand网卡和16个14TiB NVMe SSD,3FS实现了6.6 TiB/s的聚合读取吞吐量。这一测试是在500多个客户端节点(每个配备1个200Gbps网卡)的压力下完成的,同时还承载了训练任务的背景流量。
-
在25节点集群的GraySort基准测试中,3FS支持110.5 TiB数据的排序任务,耗时30分14秒,平均吞吐量达到3.66 TiB/min。这一测试展示了其在大规模数据处理中的稳定性。
-
对于推理中的KVCache查找,单个客户端节点的峰值吞吐量可达40 GiB/s,配合高效的垃圾回收机制,确保了持续的高性能。
获取与使用
开发者可以通过3FS GitHub仓库获取源代码,仓库中包含详细的设计文档、部署指南和API参考。安装依赖包括libfuse、FoundationDB和Rust工具链,构建过程支持Ubuntu 20.04和22.04,具体步骤可在文档中找到。
Smallpond:轻量级数据处理框架
与3FS配套发布的是Smallpond,一个基于DuckDB和3FS构建的轻量级数据处理框架。它的目标是为PB级数据集提供高效、简便的处理工具,同时保持无长运行服务的设计理念,降低使用和维护的复杂性。
功能与优势
Smallpond结合了DuckDB的强大SQL查询能力和3FS的高性能存储,具备以下特点:
- 高性能处理:利用DuckDB的列式存储和向量化查询引擎,确保数据处理的高效性。
- 可扩展性:支持跨节点处理超大规模数据集,轻松应对AI训练所需的PB级数据。
- 易用性:提供类似pandas的Python API,开发者只需几行代码即可完成复杂的数据操作。
使用示例
Smallpond的简单性体现在其使用方式上。以下是一个典型的工作流程:
# 下载示例数据
wget https://duckdb.org/data/prices.parquet
import smallpond
# 初始化会话
sp = smallpond.init()
# 加载数据
df = sp.read_parquet("prices.parquet")
# 数据分区与处理
df = df.repartition(3, hash_by="ticker")
df = sp.partial_sql("SELECT ticker, min(price), max(price) FROM {0} GROUP BY ticker", df)
# 保存与查看结果
df.write_parquet("output/")
print(df.to_pandas())
这段代码展示了从数据加载、分区、SQL查询到结果输出的完整过程,整个操作无需手动管理分布式环境,极大降低了开发门槛。
性能表现
Smallpond的性能同样经过严格测试。在GraySort基准测试中,它与3FS协作,在50个计算节点和25个存储节点的集群上,成功在30分14秒内完成了110.5 TiB数据的排序,平均吞吐量达到3.66 TiB/min。这一结果不仅验证了Smallpond的高效性,也展示了其与3FS无缝集成的能力。
获取与使用
Smallpond支持Python 3.8至3.12版本,安装只需运行pip install smallpond
。开发者可通过Smallpond GitHub仓库获取源代码,并在文档中找到详细的入门指南和API参考。此外,Smallpond还提供了开发支持,例如单元测试和文档构建指南,方便社区参与改进。
2024 AI基础设施论文补充
除了本次开源周的成果,DeepSeek团队在2024年的SC24会议上发表了论文《Fire-Flyer AI-HPC: A Cost-Effective Software-Hardware Co-Design for Deep Learning》,详细阐述了他们的软硬件协同设计理念。论文可在ACM链接或Arxiv链接查看,其中包含了对3FS等技术的理论分析和实现细节,为理解今日发布内容提供了更深的背景。
五天成果总结
DeepSeek开源周的五项发布共同构成了一个完整的AI基础设施生态:
- FlashMLA:高效的GPU解码内核,为变长序列处理提供极致性能。
- DeepEP:MoE模型通信库,优化分布式训练和推理的通信效率。
- DeepGEMM:高性能FP8 GEMM库,加速核心矩阵计算。
- 优化并行策略(DualPipe/EPLB):提升大规模模型训练的并行效率与负载均衡。
- 3FS与Smallpond:解决数据存储与处理的瓶颈,提供高吞吐量与易用性。
从计算优化到数据管理,这五项工具覆盖了AI开发的关键环节,每一项都经过生产环境验证,确保了实用性与可靠性。开发者可以通过各项目的GitHub仓库下载代码,亲自体验这些工具的强大功能。
结语
随着Day 5的发布,DeepSeek开源周画上了圆满的句号。3FS和Smallpond的亮相,不仅展示了DeepSeek在数据访问领域的深入探索,也为AI社区提供了一套高效实用的解决方案。如果你对这些项目感兴趣,不妨访问它们的GitHub仓库,下载代码,动手尝试。让我们共同见证AI技术的未来发展。
- https://mp.weixin.qq.com/s/ZHY8zEjaDQa9f5fEzFYDLw