openucx/ucc
Unified Collective Communication Library
何を解決するか
UCC は、AI/ML、ハイパフォーマンスコンピューティング(HPC)、および I/O ワークロードにおいて、異なるハードウェアとプログラミングモデル間で高パフォーマンスかつスケーラブルな集団通信操作を保証する、統一された API とライブラリを提供します。
動作方法
非ブロッキング操作と緩やかな順序モデルをサポートする柔軟な通信レイヤーとして機能します。さまざまなトランスポートとハードウェア集団操作と統合され、ハードウェアアクセラレーションされた集団操作を一等公民として扱います。UCX の上に構築されており、CUDA および HIP(AMD)を含む複数の GPU バックエンドをサポートしています。
対象ユーザー
複数の処理ユニット(CPU、GPU、DPU)間での効率的なデータ交換を必要とする大規模な AI/ML 学習および HPC アプリケーションを開発している開発者。
主な特徴
- 広範なハードウェア対応: InfiniBand、ROCE、CUDA、NCCL、RCCL、SHARP と互換性があります。
- スケーラブルなパフォーマンス: 高スケールの AI/ML および HPC ワークロードに特化して設計されています。
- 柔軟なプログラミング: 反復的な集団操作(初期化は一度、呼び出しは複数回)と非ブロッキング操作をサポートします。
- マルチランタイム統合: Open MPI および OpenSHMEM と連携可能です。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト