AMDはROCm Blogsで、GPUプロファイリングガイドの第7回「Performance Profiling on AMD GPUs - Part 7: AI/PyTorch® Edition」を公開しました。第1〜6回で確立した体系的なプロファイリング手順を、PyTorchのトレーニングワークロードに適用する内容です。
何が新しいか
第1〜6回はHIPとFortranのアプリケーションを対象にしていました。今回の第7回は対象をPyTorchのトレーニングワークロードに移しています。
プロファイリングの手順
記事は、シリーズ共通の次のループをそのままPyTorchに適用します。
| ステップ | ツール | 目的 |
|---|---|---|
| 1 | — | ベースラインのタイミング測定 |
| 2 | rocprofv3 |
カーネルのホットスポット特定 |
| 3 | rocprof-compute |
ルーフライン分析とハードウェアカウンターの確認 |
| 4 | rocprof-sys |
システム全体のタイムライン取得 |
PyTorchで変わる点
AMDによると、PyTorchでは1つの論理演算子が多数のGPUカーネルに変換(lower)されることがあります。そのため最適化では、カーネルを書き直すよりも、フレームワークが処理をディスパッチする方法を変えることが重要になる場合が多いとしています。

まだコメントはありません。