NVIDIA/nvbandwidth
A tool for bandwidth measurements on NVIDIA GPUs.
何を解決するか
NVIDIA GPU間、およびホストCPUとGPU間の実際のメモリ帯域幅とレイテンシを測定する標準化された方法を提供します。NVLinkなどのリンクを介したデータ転送速度が、ハイパフォーマンスコンピューティングやAIワークロードのボトルネックとなることが多いため、この測定は非常に重要です。
動作方法
このツールは、2つの異なる方法を使用してさまざまなメモリコピー(memcpy)パターンを実行します:
- コピーエンジン(CE): 標準のCUDA
memcpyAPIを使用します。 - ストリーミングマルチプロセッサ(SM): カスタムカーネルを使用してデータを移動します。
正確性を確保するために、「スピンカーネル」を使用して、測定中に操作のキューイングオーバーヘッドを排除します。レイテンシ測定には、ポインタチェイシング技術(メモリアドレスのリンクリストを作成)を採用し、ハードウェアプリフェッチやデータキャッシュヒットを防ぎ、より現実的なメモリアクセス時間の測定を実現します。
対象ユーザー
- システムアーキテクト: GPUクラスタが最高性能で構成されているかを検証するため。
- MLエンジニア: マルチGPUトレーニングや推論パイプラインにおけるボトルネックを診断するため。
- クラスタ管理者: マルチノード展開におけるNVLinkおよびノード間メモリ交換(IMEX)の健全性とパフォーマンスを検証するため。
特徴
- マルチノード対応: MPIとNVIDIA IMEXを使用して、異なる物理ノード間の帯域幅を測定可能。
- 柔軟なテスト: 単方向および双方向転送をサポートし、UUIDを介して特定のGPU間ペアのテストも可能。
- インテリジェントなサンプリング: 大規模クラスタでは、GPUペアのサブセットをサンプリングしてテスト時間を短縮しつつ、トポロジのカバレッジを維持。
- 詳細なメトリクス: 中央値または平均帯域幅を報告し、特定のレイテンシ測定値も提供。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト