project
DeepEP - DeepSeekが開発したオープンソースのエキスパート並列通信ライブラリで、MoEの学習と推論のために特別に設計されています。
DeepEPは、DeepSeek初のオープンソースEP(Expert Parallel)通信ライブラリで、ハイブリッドエキスパートモデル(MoE)のトレーニングと推論のために特別に設計されています。高スループットかつ低遅延のフルツーフルGPUカーネルを提供し、ノード内通信をサポートします。
DeepEPとは何ですか?
DeepEPは、DeepSeek初のオープンソースEP(Expert Parallel)通信ライブラリで、ハイブリッドエキスパートモデル(MoE)の学習と推論のために特別に設計されています。高スループットかつ低遅延の全対全GPUカーネルを提供し、ノード内およびノード間のNVLinkとRDMA通信をサポートします。DeepEPは、DeepSeek-V3論文のグループ制限ゲーティングアルゴリズムに特化して最適化されており、FP8データフォーマットのスケジューリングをサポートし、GPUコンピューティングリソースを消費しないフックベースの通信・計算オーバーラップ方式を採用しています。低遅延カーネルは、推論およびデコード段階で非常に優れたパフォーマンスを発揮し、遅延はわずか163マイクロ秒です。DeepEPはHopper GPUアーキテクチャに対応しており、Python 3.8、CUDA 12.3、およびPyTorch 2.1以降が必要です。
DeepEPの主な機能
- 高効率通信カーネルDeepEPは、MoEのディスパッチおよび結合処理に適した、高スループットかつ低遅延の全対全GPUカーネルを提供します。
- 低精度計算のサポートFP8やBF16といった低精度データ形式をサポートすることで、計算効率を大幅に向上させ、メモリ要件を削減します。
- 最適化された通信メカニズムDeepEPは、DeepSeek-V3論文で提案されたグループ制限ゲーティングアルゴリズム向けに最適化されたカーネルを提供し、NVLinkからRDMAへの非対称帯域幅転送をサポートしており、トレーニングおよび推論の事前充填タスクに適しています。
- 低遅延推論デコードこれは、純粋なRDMAを備えた低遅延カーネルを提供し、特に遅延に敏感な推論および復号シナリオに適しており、遅延は最短163マイクロ秒です。
- コミュニケーションとコンピューティングは重なり合う: GPUストリーミングマルチプロセッサ(SM)リソースを占有せず、計算効率を最大化する、フックベースの通信・計算オーバーラップ手法を紹介します。
- 柔軟なリソース管理柔軟なGPUリソース管理をサポートしており、ユーザーは使用するSMの数を制御し、さまざまなワークロードに適応させることができます。
- ネットワーク構成の最適化DeepEPはInfiniBandネットワーク上で完全にテストされており、異なる種類のトラフィック間の干渉を防ぐために、仮想チャネル(VL)によるトラフィック分離をサポートしています。
DeepEPのプロジェクトアドレス
- GitHubリポジトリ:https://github.com/deepseek-ai/DeepEP
DeepEPのパフォーマンス
- 高スループットカーネルDeepEPはH800 GPUとCX7 InfiniBand 400 Gb/s RDMAネットワークカード上でテストされ、優れたスループット性能を実証しました。
- 内部ノード通信NVLink を使用したノード内通信では、分配およびマージ操作のボトルネック帯域幅は [値欠落] に達します。 153 GB/s そして 158 GB/s。
- ノード間通信RDMAを使用したノード間通信では、分配およびマージ操作のボトルネック帯域幅は[値欠落]に達します。 43-47 GB/s。
- 低遅延カーネルDeepEPの低遅延カーネルは、推論デコード専用に設計されており、純粋なRDMA技術を使用することで遅延を大幅に削減しています。
- 処理中 8人の専門家 その時、配送業務の遅延は 163マイクロ秒マージ操作の遅延は 318マイクロ秒RDMA帯域幅は 46 GB/s。
- 専門家の数が増えるにつれて遅延はわずかに増加したが、 256人の専門家 当時、配信および統合作業の遅延はそれぞれ 194マイクロ秒 そして 360マイクロ秒。
- システム互換性DeepEPは主にInfiniBandネットワークに対応していますが、Converged Ethernet(RoCE)上での動作もサポートしています。HopperアーキテクチャのGPU、Python 3.8以降、CUDA 12.3以降、およびPyTorch 2.1以降が必要です。
DeepEPのシステム要件
- ハードウェア要件:
- HopperアーキテクチャをサポートするGPU(H100やH800など)は、将来的にはより多くのアーキテクチャをサポートする可能性があります。
- GPUDirect RDMAをサポートするデバイスが必要です。具体的な要件については、NVSHMEMのハードウェア仕様書を参照してください。
- ノード内通信にはNVLinkが必要であり、ノード間通信にはRDMAネットワークが必要である。
- ソフトウェア要件:
- Python 3.8以降。
- CUDA 12.3以降。
- PyTorchバージョン2.1以降。
- NVSHMEMの修正版をインストールする必要があります。具体的なインストール手順については、関連ドキュメントを参照してください。
- 低遅延のGPUメモリコピーを実現するには、GDRCopy(バージョン2.4以降)のインストールをお勧めします。
- ネットワーク要件:
- 主なテスト環境は、コンバージドイーサネット(RoCE)上のRDMAに対応したInfiniBandネットワークでした。
- 仮想チャネル(VL)によるトラフィック分離をサポートし、異なるワークロード間の干渉を防ぎます。
- その他の要件:
- コンテナ化された環境では、ホストが必要なカーネルモジュール(など)をロードしていることを確認する必要があります。
gdrdrv関連するDEBパッケージは正しくインストールされました。 - インストール後、環境変数(例:...)を設定する必要があります。
NVSHMEM_DIR(DeepEPでの使用を想定しています)
- コンテナ化された環境では、ホストが必要なカーネルモジュール(など)をロードしていることを確認する必要があります。
DeepEPの応用シナリオ
- 大規模モデルトレーニングDeepEPは効率的な並列通信をサポートしており、ハイブリッドエキスパートモデル(MoE)のトレーニングに適しており、トレーニング効率を大幅に向上させます。
- 推論タスクレイテンシに敏感な推論およびデコードシナリオに適しており、レイテンシを大幅に削減し、推論スループットを向上させることができます。
- 高性能コンピューティングHopper GPUアーキテクチャを含む複数のハードウェアプラットフォームをサポートし、NVLinkおよびRDMAネットワークの通信性能を最適化します。
- インテリジェントな顧客サービスDeepSeekのインテリジェントな顧客サービスシステムは、推論プロセスを最適化することで、ユーザーからの質問に迅速に対応し、サービス効率を向上させることができます。
- 金融セクターこれは、リスク評価や自動レポート作成などに使用され、企業の財務報告書や世論データを分析することで、債務不履行の確率を予測します。