DeepSeek開源周第五天開源項目:3FS,高性能分布式文件系統。
這邊GPT4.5剛發布,這邊 DeepSeek開源周進入到第五天開源的項目,最后一天的開源項目是:3FS(Fire-Flyer File System)。
3FS(Fire-Flyer File System)是什么?
3FS(Fire-Flyer File System)是DeepSeek自研的高性能分布式文件系統,專為解決ai訓練和推理工作負載的挑戰而設計。
3FS的特征
高性能:
利用現代SSD和RDMA網絡,提供高吞吐量和低延遲的數據訪問。
結合數千個SSD的吞吐量和數百個存儲節點的網絡帶寬,使應用能夠以無關地域的方式訪問存儲資源。
強一致性:
通過實現鏈式復制與分配查詢(CRAQ),確保強一致性,使得應用代碼更簡潔且易于推理。
文件接口:
采用無狀態元數據服務,背后支持事務型鍵值存儲(如FoundationDB)。
熟悉的文件接口,無需學習新的存儲API。
多樣化工作負載支持:
數據準備:將數據分析管道的輸出組織成層次化目錄結構,有效管理大量中間輸出。
數據加載器:通過支持跨計算節點隨機訪問訓練樣本,消除預讀取或數據洗牌的需求。
檢查點:支持大規模訓練的高吞吐量并行檢查點。
推理KV緩存:提供一種基于成本效益的替代方案,替代DRAM緩存,提供更高吞吐量并大大提高容量。
存算分離:
數據存儲服務與計算節點分離,專門用于存儲模型訓練需要用到的樣本數據。
每個存儲服務節點有16張各15TB的SSD硬盤和2張高速網卡,讀取性能強勁,網絡帶寬強大,讀寫帶寬:7.0TB/秒。
自研通信工具:
如hfreduce,優化多卡并行通信,替代英偉達的NCCL,減少PCIe流量和計算開銷。
專用數據格式FFRecord:
通過合并多個小文件,減少了訓練時打開大量小文件的開銷。
通過樣本文件的偏移量提升隨機批量讀取性能。
3FS的應用
AI訓練和推理:
3FS專為AI訓練和推理工作負載設計,能夠顯著提升這些任務的效率。
通過高性能和強一致性,3FS支持大規模模型訓練和高吞吐量推理。
數據準備和加載:
3FS的數據準備和加載器功能使得處理大量數據變得更加高效,減少了預讀取和數據洗牌的需求。
檢查點和推理緩存:
3FS支持高吞吐量的并行檢查點,確保訓練過程的穩定性和容錯性。
推理KV緩存提供了基于成本效益的替代方案,提高了推理吞吐量和容量。
3FS的使用
安裝和配置:
3FS可以通過GitHub上的開源項目進行安裝和配置。
數據格式轉換:
使用FFRecord格式進行數據存儲和加載,需要將樣本數據轉換成FFRecord格式。
提供了FFRecord轉換工具,方便用戶進行數據格式轉換。
與PyTorch集成:
3FS適配了PyTorch的Dataset和Dataloader接口,可以非常方便地加載數據并發起訓練。
GitHub項目地址:https://github.com/deepseek-ai/3FS
前四天開源項目回顧
第一天:FlashMLA,針對NVIDIA Hopper GPU的高效解碼內核,優化了多頭潛在注意力(MLA)的性能,顯著提升了AI工具在內容創作中的響應速度。
第二天:DeepeEP,首個用于混合專家模型(MoE)訓練和推理的開源通信庫,優化了大規模分布式訓練的通信效率,降低了延遲。
第三天:DeepGEMM,支持稠密和MoE模型的FP8計算庫,專為NVIDIA Hopper架構GPU設計,顯著提高了計算效率和硬件利用率。
第四天:DualPipe,一種雙向流水線并行算法,旨在優化V3/R1模型訓練中的計算和通信重疊。EPLB,一個專家并行負載均衡器,專門用于解決大規模AI模型中專家并行任務的負載不均衡問題。