OpenLake MLPerf Storage v3.0 效能結果
OpenLake 在 MLPerf Storage v3.0 基準測試中,針對 Llama 3.1 8B checkpointing 的 Closed division S3 提交項目中,取得了最高的讀取與寫入頻寬。此結果證明了該系統在大型 LLM 訓練過程中,能有效最小化儲存狀態時的 GPU 空閒時間,並在發生故障後加速恢復過程。
MLPerf Storage v3.0 基準測試結果
OpenLake 在模擬 Llama 3 系列模型的 Llama 3.1 8B 配置中,領先了其他可比的 S3 提交項目。此基準測試旨在測試儲存系統在訓練程序儲存或還原模型狀態時,於滿載狀態下的行為。
效能指標
針對 Llama 3.1 8B 配置,OpenLake 提供了以下效能指標:
| Metric | OpenLake Result |
|---|---|
| Write Bandwidth | 6.72 GiB/s |
| Write Duration | 29.42 seconds |
| Read Bandwidth | 11.55 GiB/s |
| Read Duration | 9.37 seconds |
與其他提交項目的比較
與使用相同 Closed division checkpointing 工作負載、S3 API 介面、Llama 3.1 8B 模型、單一用戶端節點與單一數據並行實例的其他已發布結果相比,OpenLake 的表現優於競爭對手:
| Organization | Write Bandwidth | Read Bandwidth | Write Duration | Read Duration |
|---|---|---|---|---|
| OpenLake | 6.72 GiB/s | 11.55 GiB/s | 29.42 s | 9.37 s |
| NVIDIA AIStore (6 node) | 3.40 GiB/s | 11.08 GiB/s | 30.83 s | 9.47 s |
| NVIDIA AIStore (12 node) | 3.20 GiB/s | 8.33 GiB/s | 30.83 s | 12.90 s |
| NVIDIA AIStore (3 node) | 3.02 GiB/s | 6.99 GiB/s | 34.67 s | 15.00 s |
| Nebius Object Storage | 2.81 GiB/s | 7.14 GiB/s | 37.24 s | 14.67 s |
OpenLake 的寫入頻寬為 6.72 GiB/s,是次快可比提交項目的 1.98 倍。
OpenLake 的技術架構
OpenLake 利用 Infinity Core I/O Engine 來實現 AI 工作負載的高效能儲存。該系統由 io_uring 與 GPUDirect Storage 提供動力,專為低延遲與高吞吐量而設計。
關鍵實作細節
為了在減少 CPU 開銷的同時最大化進行中的 I/O 操作,OpenLake 採用了以下技術:
- Asynchronous io_uring I/O: 用於非阻塞式核心操作。
- Pinned Execution Threads: 減少排程開銷。
- Fine-grained I/O Coalescing: 優化數據移動。
- XFS and Workload-Specific Tuning: 為 AI 儲存需求量身打造。
- S3 API Interface: 提供讀取與寫入 checkpoint 的標準介面。
此外,該專案使用 Rust compio (thread-per-core 設計) 並結合 GPU 上的壓縮技術來支援 KV offloading,在 96 個節點的集群中,於 1ms 內達到了超過 100 萬 IOPS。
Checkpoint 效能對 LLM 訓練的影響
Checkpointing 是指定期將模型權重、優化器狀態與訓練狀態儲存至儲存裝置中,以保護可能持續數週的大型訓練任務進度。
降低訓練成本
在同步 checkpointing 中,訓練會暫停直到狀態被持久化寫入。較快的寫入頻寬能減少 GPU 空閒等待的時間,從而提高加速器利用率並降低整體訓練成本。
加速恢復
較快的讀取頻寬能縮短故障後的恢復路徑,讓訓練能更快速地恢復。這對於強化學習、預訓練與後訓練任務至關重要,因為這些任務會頻繁地建立 checkpoint,且基礎設施故障可能隨時發生。