3FS – DeepSeek推出的高性能分布式文件系統(tǒng)
3FS(Fire-Flyer File System)是DeepSeek推出的一款高效分布式文件系統(tǒng),專(zhuān)門(mén)為人工智能的訓(xùn)練和推理任務(wù)而設(shè)計(jì)。它利用現(xiàn)代SSD和RDMA網(wǎng)絡(luò)技術(shù),通過(guò)分離式架構(gòu)整合數(shù)千個(gè)SSD的吞吐量和數(shù)百個(gè)存儲(chǔ)節(jié)點(diǎn)的網(wǎng)絡(luò)帶寬,能夠?qū)崿F(xiàn)高達(dá)6.6 TiB/s的讀取吞吐量。此外,3FS確保強(qiáng)一致性并提供通用文件接口,用戶無(wú)需學(xué)習(xí)新的存儲(chǔ)API。
3FS是什么
3FS(Fire-Flyer File System)是由DeepSeek開(kāi)發(fā)的高性能分布式文件系統(tǒng),專(zhuān)門(mén)針對(duì)人工智能的訓(xùn)練和推理任務(wù)進(jìn)行優(yōu)化。利用現(xiàn)代SSD和RDMA網(wǎng)絡(luò)技術(shù),3FS通過(guò)分離式架構(gòu)聚合數(shù)千個(gè)SSD的高吞吐量以及數(shù)百個(gè)存儲(chǔ)節(jié)點(diǎn)的網(wǎng)絡(luò)帶寬,提供高達(dá)6.6 TiB/s的讀取速率。3FS不僅提供強(qiáng)一致性保障,還支持通用文件接口,用戶無(wú)需學(xué)習(xí)新的存儲(chǔ)API。其在大規(guī)模數(shù)據(jù)處理和推理優(yōu)化方面表現(xiàn)卓越,在GraySort測(cè)試中實(shí)現(xiàn)了3.66 TiB/min的吞吐量,而KVCache的讀取吞吐量可達(dá)40 GiB/s。
3FS的主要功能
- 卓越的數(shù)據(jù)訪問(wèn)性能:聚合數(shù)千個(gè)SSD的吞吐量,結(jié)合數(shù)百個(gè)存儲(chǔ)節(jié)點(diǎn)的網(wǎng)絡(luò)帶寬,提供高達(dá)6.6 TiB/s的讀取速率。支持大規(guī)模集群中的高吞吐量并行讀寫(xiě),極大優(yōu)化AI訓(xùn)練和推理任務(wù)中的數(shù)據(jù)加載效率。
- 強(qiáng)一致性保障:通過(guò)鏈?zhǔn)綇?fù)制與分配查詢(CRAQ)技術(shù)確保數(shù)據(jù)的一致性,簡(jiǎn)化應(yīng)用開(kāi)發(fā)過(guò)程。
- 通用文件接口:提供無(wú)狀態(tài)的元數(shù)據(jù)服務(wù),支持事務(wù)性鍵值存儲(chǔ)(如FoundationDB),用戶無(wú)需學(xué)習(xí)新的存儲(chǔ)API。
- 優(yōu)化AI工作負(fù)載:
- 高效的數(shù)據(jù)準(zhǔn)備:有效管理大量中間輸出,支持層次化目錄結(jié)構(gòu)。
- 快速數(shù)據(jù)加載:支持跨計(jì)算節(jié)點(diǎn)的隨機(jī)訪問(wèn),無(wú)需預(yù)取或數(shù)據(jù)集的洗牌。
- 檢查點(diǎn)支持:為大規(guī)模訓(xùn)練提供高吞吐量并行檢查點(diǎn)功能。
- KVCache技術(shù):為推理任務(wù)提供高吞吐量、大容量的緩存方案,優(yōu)化推理效率。
- 高擴(kuò)展性與靈活性:支持大規(guī)模集群部署,適用于從單節(jié)點(diǎn)到數(shù)千節(jié)點(diǎn)的多種應(yīng)用場(chǎng)景。
3FS的技術(shù)原理
- 分離式架構(gòu):采用計(jì)算與存儲(chǔ)分離的設(shè)計(jì)方式,集中管理存儲(chǔ)資源,通過(guò)高速網(wǎng)絡(luò)(如RDMA)實(shí)現(xiàn)高效的數(shù)據(jù)傳輸,簡(jiǎn)化資源管理。
- 鏈?zhǔn)綇?fù)制與分配查詢(CRAQ):通過(guò)CRAQ技術(shù)實(shí)現(xiàn)強(qiáng)一致性,利用鏈?zhǔn)綇?fù)制確保多個(gè)副本間的數(shù)據(jù)一致性,并通過(guò)分配查詢優(yōu)化讀取性能,降低延遲。
- 無(wú)狀態(tài)元數(shù)據(jù)服務(wù):3FS的無(wú)狀態(tài)元數(shù)據(jù)服務(wù)基于事務(wù)性鍵值存儲(chǔ)(如FoundationDB),提高系統(tǒng)可擴(kuò)展性,降低元數(shù)據(jù)管理復(fù)雜度。
- Direct I/O與RDMA優(yōu)化:采用Direct I/O直接訪問(wèn)SSD,避免使用文件緩存,減少CPU和內(nèi)存開(kāi)銷(xiāo),并利用RDMA技術(shù)提升數(shù)據(jù)傳輸效率。
- KVCache技術(shù):在推理任務(wù)中,KVCache緩存關(guān)鍵中間結(jié)果,避免重復(fù)計(jì)算,顯著提高推理效率。KVCache結(jié)合高吞吐量和大容量的優(yōu)勢(shì),是DRAM緩存的經(jīng)濟(jì)替代方案。
- 數(shù)據(jù)局部性優(yōu)化:通過(guò)優(yōu)化數(shù)據(jù)布局和訪問(wèn)模式,降低數(shù)據(jù)傳輸延遲和帶寬消耗,尤其在大規(guī)模分布式訓(xùn)練和推理任務(wù)中表現(xiàn)優(yōu)異。
3FS的性能表現(xiàn)
- 大規(guī)模讀取吞吐量:在一個(gè)由180個(gè)存儲(chǔ)節(jié)點(diǎn)組成的集群中,每個(gè)存儲(chǔ)節(jié)點(diǎn)配備2×200Gbps InfiniBand網(wǎng)卡和16個(gè)14TiB NVMe SSD。約500+個(gè)客戶端節(jié)點(diǎn)用于讀取壓力測(cè)試,每個(gè)客戶端節(jié)點(diǎn)配置1×200Gbps InfiniBand網(wǎng)卡。在訓(xùn)練作業(yè)的背景流量下,最終聚合讀取吞吐量達(dá)到約6.6 TiB/s。
- GraySort性能測(cè)試:在GraySort基準(zhǔn)測(cè)試中,3FS表現(xiàn)出色。GraySort是一項(xiàng)用于衡量分布式系統(tǒng)數(shù)據(jù)處理能力的大規(guī)模數(shù)據(jù)排序測(cè)試。測(cè)試集群包含25個(gè)存儲(chǔ)節(jié)點(diǎn)(每個(gè)節(jié)點(diǎn)2個(gè)NUMA域,每個(gè)域1個(gè)存儲(chǔ)服務(wù),2×400Gbps NIC)和50個(gè)計(jì)算節(jié)點(diǎn)(每個(gè)節(jié)點(diǎn)192個(gè)物理核心,2.2 TiB內(nèi)存,1×200Gbps NIC)。3FS成功在該測(cè)試中完成110.5 TiB數(shù)據(jù)的排序任務(wù),耗時(shí)僅為30分鐘14秒,平均吞吐量達(dá)到3.66 TiB/min。
- KVCache推理優(yōu)化:KVCache是3FS為優(yōu)化大型語(yǔ)言模型推理過(guò)程而設(shè)計(jì)的緩存技術(shù),基于緩存解碼層中的關(guān)鍵向量和值向量,避免重復(fù)計(jì)算。在KVCache的性能測(cè)試中,讀取吞吐量峰值達(dá)到了40 GiB/s,顯著提升了推理效率。KVCache的垃圾回收(GC)操作表現(xiàn)出高IOPS性能,確保緩存的高效管理和更新。
3FS的項(xiàng)目地址
- GitHub倉(cāng)庫(kù):https://github.com/deepseek-ai/3FS
3FS的應(yīng)用場(chǎng)景
- 大規(guī)模AI訓(xùn)練:高效支持海量數(shù)據(jù)的快速讀寫(xiě),提升訓(xùn)練效率。
- 分布式數(shù)據(jù)處理:優(yōu)化數(shù)據(jù)加載和管理,支持隨機(jī)訪問(wèn),無(wú)需預(yù)取或數(shù)據(jù)集的洗牌。
- 推理優(yōu)化:通過(guò)KVCache緩存中間結(jié)果,減少重復(fù)計(jì)算,提升推理效率。
- 檢查點(diǎn)支持:提供高吞吐量的并行檢查點(diǎn)功能,保障訓(xùn)練任務(wù)的穩(wěn)定性和可恢復(fù)性。
- 多節(jié)點(diǎn)計(jì)算環(huán)境:無(wú)縫集成到大規(guī)模集群,支持靈活擴(kuò)展,滿足不同規(guī)模的AI應(yīng)用需求。