はじめに
3FS(Fire-Flyer File System)は、DeepSeekチームによって開発されたオープンソースの並列ファイルシステムで、最新のSSDとRDMAネットワーク向けに設計され、データアクセス効率の劇的な向上を目指しています。180ノードのクラスタにおいて、6.6TiB/秒の読み出しスループットと3.66TiB/分の書き込み速度を達成し、圧倒的な高性能を実証しています。DeepSeekオープンソースウィークの成果の1つである3FSは、技術革新の産物であるだけでなく、コミュニティの共有に対するチームのコミットメントを反映しています。従来のディスク指向の分散ファイルシステム設計を覆し、最新のハードウェア特性に最適化されており、AIトレーニングやビッグデータ分析など、効率的なデータ処理を必要とする大規模コンピューティングシナリオに適しています。開発者も企業ユーザーも、GitHubを通じてソースコードにアクセスし、自由にデプロイやカスタマイズを行うことができる。
機能一覧
- 高スループットのデータアクセス6.6TiB/秒のリードと3.66TiB/分のライトをサポートし、SSDとRDMAネットワークの帯域幅を最大限に活用します。
- 並列処理能力複数のノードを連携させることで、大規模クラスタのデータ処理効率を向上。
- 最新のハードウェア最適化SSDとRDMAネットワークに深く適応し、従来のファイルシステムのパフォーマンスボトルネックを克服。
- カスタマイズ可能なオープンソース完全なソースコードが提供されているので、ユーザーは必要に応じて機能を変更したり拡張したりすることができます。
- 本番環境ですぐに使えるDeepSeekチームによる本番検証済みで、実際のビジネスシナリオに直接導入できます。
ヘルプの使用
取得と設置のプロセス
3FSはオープンソースプロジェクトであるため、導入にはある程度の技術的なバックグラウンドが必要です。以下は、ユーザーがすぐに使い始められるように、インストールと使い方の詳しいガイドです。
1.ソースコードへのアクセス
- ブラウザを開き、https://github.com/deepseek-ai/3FS。
- ページの右上にある "Code "ボタンをクリックし、"Download ZIP "を選択してZIPファイルをダウンロードするか、Gitコマンドを使ってリポジトリをクローンしてください:
git clone https://github.com/deepseek-ai/3FS.git
- ダウンロードが完了したら、ファイルをローカルのディレクトリに解凍します。
/ホーム/ユーザー/3FS
.
2.環境準備
3FSの実行には、最新のハードウェア(SSDとRDMAネットワーク)とLinux環境が必要です。システムが以下の条件を満たしていることを確認してください:
- オペレーティングシステム推奨LinuxディストリビューションはUbuntu 20.04以降です。
- ハードウェア要件NVMe SSDとInfiniBandやRoCEなどのRDMAネットワークをサポートするサーバークラスタ。
- ソフトウェア依存Git、GCC、Makeなどの基本的なコンパイル・ツールをインストールする必要があります。以下のコマンドでインストールできる:
sudo apt update sudo apt install git gcc make
3.コンパイルとインストール
- 3FSディレクトリに移動する:
cd /home/user/3FS
- その他の依存関係の記述(通常は
README.md
)があれば、ドキュメントに従ってインストールする。 - ソースコードをコンパイルする:
作る
- コンパイルに成功したら、システムにインストールする:
sudo make install
インストールが完了すると、3FSの実行ファイルとコンフィギュレーションファイルがシステムのデフォルトパス(通常は
/usr/local/bin
).
4.クラスタの設定
- コンフィギュレーション・ファイル(デフォルトでは
コンフィグ
ディレクトリにある。3fs.conf
)、クラスタ・ノード情報を設定する:- ノードのIPアドレスを指定します。
ノード1=192.168.1.10
. - SSDストレージ・パスを設定する。
storage_path=/dev/nvme0n1
. - ノード間の適切な通信を確保するために、RDMAネットワーク・パラメーターを設定する。
- ノードのIPアドレスを指定します。
- 設定を保存したら、各ノードでサービスを開始する:
3fs --config /path/to/3fs.conf
5.インストールの検証
- サービスのステータスを確認する:
3fs --ステータス
- 3FS running on 180 nodes "のようなメッセージが返されれば、デプロイは成功です。
主な機能
高スループットのデータアクセス
- ファイルシステムのマウントクライアントで以下のコマンドを実行し、3FSをローカルディレクトリにマウントする:
mount -t 3fs /path/to/storage /mnt/3fs
- データを取り出す直接使用
猫
もしかしたらcp
コマンドでファイルを読むことができる:cat /mnt/3fs/large_file.txt
このシステムは、最大6.6 TiB/sの速度で複数のノードからデータを自動的に並列抽出する。
- データを書き込むマウントディレクトリにファイルをコピーする:
cp large_file.txt /mnt/3fs/
書き込み速度は最大3.66 TiB/分。
並列処理
- マルチノード環境では、3FSが自動的にデータタスクを割り当てます。ユーザーは手動で介入する必要はなく、アプリケーションが並列I/O(HadoopやMPIプログラムなど)をサポートしていることを確認するだけでよい。
- テスト並列パフォーマンスの例:
dd if=/dev/zero of=/mnt/3fs/testfile bs=1G count=10
スループットが期待値に近いかどうかを観察する。
カスタム開発
- ソースコードを修正する。
ソース
ディレクトリで C/C++ ファイルを編集する。例えば、特定の作業負荷に最適化するためにバッファサイズを調整する。 - リコンパイルする:
クリーンにする
- 修正したバージョンをデプロイする:
sudo make install
ほら
- ハードウェア互換性すべてのノードがRDMAとNVMeをサポートしていることを確認してください。
- ネットワーク構成ファイアウォールは、通信の中断を避けるためにRDMA関連ポート(例えばデフォルトでは4791)を開く必要がある。
- 文書参照インストール中に問題が発生した場合は、GitHubの
README.md
または、Issueを送信してください。
以上の手順で、ユーザーは3FSを素早く構築・利用し、その効率的なデータアクセス機能を体験することができる。AIトレーニングであれ、ビッグデータ処理であれ、3FSは強力なサポートを提供できる。
今週のリリースを振り返ると、ディープシークはビッグモデルのための完全な技術スタックを構築した:
-
- 1日目 - FlashMLA可変長配列処理に最適化された効率的なMLA復号カーネル -
- 2日目 - ディープEPMoEモデルの学習と推論をサポートする初のオープンソースエキスパート並列通信ライブラリ -
- 3日目 - DeepGEMM: 高密度計算とMoE計算をサポートするFP8 GEMMライブラリ -
- 4日目 - 並列コンピューティング戦略DualPipe双方向パイプライン並列アルゴリズムとEPLB Expert Parallel Load Balancerを搭載。 -
- 5日目 - 3FSとスモールポンド高性能データ・ストレージおよび処理インフラ