DatadogによるNVIDIA GPUのモニタリング

Datadog でNVIDIA GPUをモニタリングする

機械学習をしているとCUDAを使った計算が多くなります.計算している時のGPUのステータスをモニタリングしたくなりました.それもリモートで監視したかったので,Datadogによる監視をしてみようと考えました.DatadogのAgentは,デフォルトではGPUのモニタリング項目はありません.しかし,Datadogは,AgentのCheckスクリプトを簡単に作成・追加することができます.そこで,GPUの状態を監視するスクリプトを作成しました.NVIDIAの nvidia-ml-py モジュールを使って取得しています.

現在は,GPU毎に4項目(トータルメモリ,使用メモリ,空きメモリ,温度)しか取得していませんが,すこしづつ増やしていこうと思います.なお,取得したい項目等が有れば教えてください.追加していきます.

Metrics

  • gpu.total: トータルメモリ
  • gpu.used: 使用中メモリ
  • gpu.free: 空きメモリ
  • gpu.temp: 温度

Tags

  • name: GPU名(例: GEFORCE_GTX_660)

コードは以下にあります

リファレンス