3FS  by deepseek-ai

Distributed file system for AI training/inference workloads

Created 1 year ago
9,714 stars

Top 5.2% on SourcePulse

GitHubView on GitHub
Project Summary

Fire-Flyer File System (3FS) is a high-performance distributed file system engineered for AI training and inference workloads. It offers a disaggregated architecture, strong consistency via Chain Replication with Apportioned Queries (CRAQ), and familiar file interfaces, simplifying development for distributed applications.

How It Works

3FS employs a disaggregated architecture, pooling thousands of SSDs and hundreds of storage nodes to provide locality-oblivious storage access. Its metadata services are stateless, backed by a transactional key-value store like FoundationDB, ensuring strong consistency. This design aims to deliver high throughput and simplify reasoning for complex AI workloads.

Quick Start & Requirements

  • Install: Clone the repository, update submodules (git submodule update --init --recursive), and apply patches (./patches/apply.sh).
  • Dependencies: Requires cmake, libuv1-dev, liblz4-dev, liblzma-dev, libdouble-conversion-dev, libdwarf-dev, libunwind-dev, libaio-dev, libgflags-dev, libgoogle-glog-dev, libgtest-dev, libgmock-dev, clang-format-14, clang-14, clang-tidy-14, lld-14, libgoogle-perftools-dev, google-perftools, libssl-dev, gcc-10/gcc-12, libboost (version varies by Ubuntu), build-essential, libfuse 3.16.1+, FoundationDB 7.1+, and Rust toolchain (1.75.0+). Docker images are available for TencentOS-4 and OpenCloudOS-9.
  • Build: Use cmake with specific compiler flags (e.g., clang++-14) and cmake --build build.
  • Docs: Design Notes, Setup Guide, USRBIO API Reference.

Highlighted Details

  • Achieved 6.6 TiB/s aggregate read throughput on a 180-node cluster with 200Gbps InfiniBand and NVMe SSDs.
  • GraySort benchmark sorted 110.5 TiB in 30 minutes and 14 seconds (3.66 TiB/min) on a 25-node storage cluster.
  • KVCache for LLM inference demonstrated peak read throughput up to 40 GiB/s.
  • Supports familiar file interfaces, eliminating the need for new APIs.

Maintenance & Community

  • Project hosted on GitHub: deepseek-ai/3fs.
  • Issue reporting via GitHub Issues.

Licensing & Compatibility

  • License: Apache License 2.0.
  • Compatible with commercial and closed-source applications.

Limitations & Caveats

The setup process involves a significant number of system-level dependencies and specific compiler versions, potentially leading to complex environment configuration. FoundationDB and a Rust toolchain are mandatory prerequisites.

Health Check
Last Commit

1 day ago

Responsiveness

1 day

Pull Requests (30d)
3
Issues (30d)
2
Star History
64 stars in the last 30 days

Explore Similar Projects

Starred by Luca Soldaini Luca Soldaini(Research Scientist at Ai2), Chip Huyen Chip Huyen(Author of "AI Engineering", "Designing Machine Learning Systems"), and
16 more.

webdataset by webdataset

0.2%
3k
High-performance I/O system for large deep learning problems, strong PyTorch support
Created 6 years ago
Updated 2 weeks ago
Starred by Chip Huyen Chip Huyen(Author of "AI Engineering", "Designing Machine Learning Systems") and Chaoyu Yang Chaoyu Yang(Founder of Bento).

seatunnel by apache

0.1%
9k
High-performance multimodal data integration
Created 8 years ago
Updated 23 hours ago
Feedback? Help us improve.