NVIDIA GPU を動力源とするAzure VM でメトリックを取得する

 

こんにちは、山崎です。

仮想マシンを構築した際に、以下のようにタスクマネージャーからGPUのパフォーマンスを確認することができます。

 

 

この時、Azure Portal上からメトリックを用いてパフォーマンス確認できないかと思い、試行錯誤の末、GPUのメトリックをAzure Portalにて確認することが出来ました。
その時の操作手順をこちらのBlogにて投稿したいと思います。

 

 

はじめに

今回は以下のVMにて設定を行いました。

イメージ:Windows 11 Pro, version 23H2
サイズ :Standard NV36ads A10 v5
GPU :NvidiaGpuDriverWindows

 

診断設定の有効化

Azure Portalにて監視を有効にします。

Azure Portal内の対象の仮想マシンにて[監視] > [診断設定]よりストレージアカウントを選択し、[ゲストレベルの監視を有効にする]を押下します。

 

 

対象VM内でのコマンド実行

対象のVM内にて、Power Shellを管理者で開き、以下のコマンドを実行します。

# Set the URL for the PowerShell script
$scriptUrl = “https://raw.githubusercontent.com/vinil-v/gpu-monitoring/refs/heads/main/scripts/gpumon-win.ps1”
# Download and execute the script
Invoke-WebRequest -Uri $scriptUrl -UseBasicParsing | Invoke-Expression

このコマンドを実行することで、Telegrafの設定ファイルを作成、Telegrafをサービスとしてインストール・開始します。

 

 

AzurePortal上でメトリックの確認

対象の仮想マシンにて[監視] > [メトリック]を確認すると、[メトリック名前空間]にtelegrafのカスタムメトリックが追加されています。

以下のように選択します

スコープ:GPUを確認する仮想マシン

メトリック名前空間:[telegrad/nvidia_smi]

メトリック:[utilization_gpu]

集計:平均(GPUが複数搭載されている場合に平均値が集計されます)

設定を行うと以下のようにメトリックが表示されます。

 

 

また、[メトリックの追加]で追加を行うことで複数マシンのGPUを並行して比較することもできます。

 

余談ですが、[メトリック]にはGPU利用率以外にもメモリに関するメトリックも取得できます。

利用目的に応じてカスタマイズすることをお勧めします。

 

最後に

以上の流れで、NVIDIA GPUのメトリックをAzure Portal上で確認・比較を行うことができます。

特に複数のVMのGPU情報を1つの画面で比較することができるのはパフォーマンス比較をする上で非常に有効かと思います。

是非利用してみてはいかがでしょうか。

 

 

いいね (←参考になった場合はハートマークを押して評価お願いします)
読み込み中...

注意事項・免責事項

※技術情報につきましては投稿日時点の情報となります。投稿日以降に仕様等が変更されていることがありますのでご了承ください。

※公式な技術情報の紹介の他、当社による検証結果および経験に基づく独自の見解が含まれている場合がございます。

※これらの技術情報によって被ったいかなる損害についても、当社は一切責任を負わないものといたします。十分な確認・検証の上、ご活用お願いたします。

※当サイトはマイクロソフト社によるサポートページではございません。パーソルクロステクノロジー株式会社が運営しているサイトのため、マイクロソフト社によるサポートを希望される方は適切な問い合わせ先にご確認ください。
 【重要】マイクロソフト社のサポートをお求めの方は、問い合わせ窓口をご確認ください