NVIDIA Data Center GPU Manager のインテグレーションでは、ストリーミング マルチプロセッサ(SM)ブロック使用率、SM 占有率、SM パイプ使用率、PCIe トラフィック レート、NVLink トラフィック レートなど、高度な主要 GPU 指標が DCGM から収集されます。これらの指標の目的と解釈については、DCGM 機能の概要にあるプロファイリング指標をご覧ください。
NVIDIA Data Center GPU Manager の詳細については、DCGM のドキュメントをご覧ください。 このインテグレーションには、DCGM バージョン 3.1 以降との互換性があります。
Ops エージェントは、NVIDIA のクライアント ライブラリ go-dcgm
を使用して DCGM 指標を収集します。
これらの指標は Linux システムでのみ使用できます。NVIDIA GPU モデル P100、P4 から指標は収集されません。
前提条件
DCGM 指標を収集するには、次の操作を行う必要があります。
Ops エージェントをインストールする。 GPU Monitoring と互換性があるのは、Ops エージェントのバージョン 2.38.0 またはバージョン 2.41.0 以降のみです。GPU が接続された VM に Ops エージェント バージョン 2.39.0 と 2.40.0 をインストールしないでください。詳しくは、エージェントのクラッシュとレポートでの NVIDIA への言及をご覧ください。
DCGM をインストールして確認する
DCGM バージョン 3.1 以降をインストールして、特権サービスとして実行する必要があります。DCGM をインストールするには、DCGM ドキュメントのインストールをご覧ください。
DCGM が正しく実行されていることを確認するには、次の操作を行います。
次のコマンドを実行して、DCGM サービスのステータスを確認します。
sudo service nvidia-dcgm status
サービスが実行されている場合、
nvidia-dcgm
サービスはactive (running)
として表示されます。出力は次のようになります。● nvidia-dcgm.service - NVIDIA DCGM service Loaded: loaded (/usr/lib/systemd/system/nvidia-dcgm.service; disabled; vendor preset: enabled) Active: active (running) since Sat 2023-01-07 15:24:29 UTC; 3s ago Main PID: 24388 (nv-hostengine) Tasks: 7 (limit: 14745) CGroup: /system.slice/nvidia-dcgm.service └─24388 /usr/bin/nv-hostengine -n --service-account nvidia-dcgm
次のコマンドを実行して、GPU デバイスが検出されることを確認します。
dcgmi discovery --list
デバイスが検出された場合、出力は次のようになります。
1 GPU found. +--------+----------------------------------------------------------------------+ | GPU ID | Device Information | +--------+----------------------------------------------------------------------+ | 0 | Name: NVIDIA A100-SXM4-40GB | | | PCI Bus ID: 00000000:00:04.0 | | | Device UUID: GPU-a2d9f5c7-87d3-7d57-3277-e091ad1ba957 | +--------+----------------------------------------------------------------------+
DCGM 用に Ops エージェントを構成する
Ops エージェントの構成のガイドに従って、DCGM サービスからテレメトリーを収集するために必要な要素を追加し、エージェントを再起動します。
構成の例
次のコマンドは、DCGM のテレメトリーを収集して取り込み、Ops エージェントを再起動するための構成を作成します。
# Configures Ops Agent to collect telemetry from the app and restart Ops Agent. set -e # Create a back up of the existing file so existing configurations are not lost. sudo cp /etc/google-cloud-ops-agent/config.yaml /etc/google-cloud-ops-agent/config.yaml.bak # Configure the Ops Agent. sudo tee /etc/google-cloud-ops-agent/config.yaml > /dev/null << EOF metrics: receivers: dcgm: type: dcgm service: pipelines: dcgm: receivers: - dcgm EOF sudo systemctl restart google-cloud-ops-agent
これらのコマンドを実行したら、エージェントが再起動したことを確認できます。次のコマンドを実行して、サブエージェント コンポーネントの「Metrics Agent」と「Logging Agent」が「active (running)」と表示されていることを確認します。
sudo systemctl status google-cloud-ops-agent"*"
デフォルトの Compute Engine サービス アカウントではなくカスタム サービス アカウントを使用している場合、または非常に古い Compute Engine VM がある場合は、Ops エージェントの認可が必要になることがあります。
指標の収集を構成する
DCGM から指標を取り込むには、DCGM が生成する指標のレシーバーを作成してから、新しいレシーバー用のパイプラインを作成する必要があります。
このレシーバーでは、複数のエンドポイントのモニタリングなど、構成で複数のインスタンスを使用することはできません。このようなインスタンスはすべて同じ時系列に書き込まれるため、Cloud Monitoring ではインスタンスを区別できません。
dcgm
指標のレシーバーを構成するには、次のフィールドを指定します。
フィールド | デフォルト | 説明 |
---|---|---|
collection_interval |
60s |
時間(例: 30s 、5m )。 |
endpoint |
localhost:5555 |
DCGM サービスのアドレス(host:port 形式)。 |
type |
値は dcgm にする必要があります。 |
モニタリング対象
次の表に、Ops エージェントが DCGM サービスから収集する指標の一覧を示します。 すべての GPU モデルですべての指標を利用できるわけではありません。NVIDIA GPU モデル P100、P4 から指標は収集されません。
指標タイプ | |
---|---|
種類、タイプ モニタリング対象リソース |
ラベル |
workload.googleapis.com/dcgm.gpu.profiling.dram_utilization †
|
|
GAUGE 、DOUBLE gce_instance |
gpu_number model uuid
|
workload.googleapis.com/dcgm.gpu.profiling.nvlink_traffic_rate †
|
|
GAUGE 、INT64 gce_instance |
direction gpu_number model uuid
|
workload.googleapis.com/dcgm.gpu.profiling.pcie_traffic_rate †
|
|
GAUGE 、INT64 gce_instance |
direction gpu_number model uuid
|
workload.googleapis.com/dcgm.gpu.profiling.pipe_utilization †
|
|
GAUGE 、DOUBLE gce_instance |
gpu_number model pipe ‡uuid
|
workload.googleapis.com/dcgm.gpu.profiling.sm_occupancy †
|
|
GAUGE 、DOUBLE gce_instance |
gpu_number model uuid
|
workload.googleapis.com/dcgm.gpu.profiling.sm_utilization †
|
|
GAUGE 、DOUBLE gce_instance |
gpu_number model uuid
|
† GPU モデル P100 および P4 では使用できません。
‡ L4 の場合、pipe
値 fp64
はサポートされません。
また、Ops エージェントの組み込み構成では、NVIDIA Management Library(NVML)によってレポートされる agent.googleapis.com/gpu
指標も収集されます。これらの指標を収集するために Ops エージェントで追加の構成は必要ありませんが、GPU が接続された VM を作成し、GPU ドライバをインストールする必要があります。詳細については、gpu
指標についてをご覧ください。
構成を確認する
このセクションでは、NVIDIA DCGM レシーバーが正しく構成されていることを確認する方法について説明します。Ops エージェントがテレメトリーの収集を開始するまでに 1~2 分かかる場合があります。
NVIDIA DCGM 指標が Cloud Monitoring に送信されていることを確認するには、次のようにします。
-
Google Cloud コンソールで、[leaderboardMetrics Explorer] ページに移動します。
検索バーを使用してこのページを検索する場合は、小見出しが [Monitoring] である結果を選択します。
- クエリビルダー ペインのツールバーで、[codeMQL] または [codeMQL] という名前のボタンを選択します。
- [MQL] 切り替えで [MQL] が選択されていることを確認します。言語切り替えボタンは、クエリの書式設定と同じツールバーにあります。
- エディタに次のクエリを入力し、[クエリを実行] をクリックします。
fetch gce_instance | metric 'workload.googleapis.com/dcgm.gpu.profiling.sm_utilization' | every 1m
ダッシュボードを表示
NVIDIA DCGM 指標を表示するには、グラフまたはダッシュボードが構成されている必要があります。NVIDIA DCGM インテグレーションには、1 つ以上のダッシュボードが含まれています。インテグレーションを構成して Ops エージェントが指標データの収集を開始すると、ダッシュボードは自動的にインストールされます。
インテグレーションをインストールすることなく、ダッシュボードの静的プレビューを表示することもできます。
インストールされているダッシュボードを表示する手順は次のとおりです。
-
Google Cloud コンソールで [ダッシュボード] ページに移動します。
検索バーを使用してこのページを検索する場合は、小見出しが [Monitoring] である結果を選択します。
- [ダッシュボード リスト] タブを選択し、[統合] カテゴリを選択します。
- 表示するダッシュボードの名前をクリックします。
インテグレーションを構成してもダッシュボードがインストールされていない場合は、Ops エージェントが実行されていることを確認します。ダッシュボードにグラフの指標データがない場合、ダッシュボードのインストールは失敗します。Ops エージェントが指標の収集を開始した後に、ダッシュボードがインストールされます。
ダッシュボードの静的プレビューを表示する手順は次のとおりです。
-
Google Cloud コンソールで [統合] ページに移動します。
検索バーを使用してこのページを検索する場合は、小見出しが [Monitoring] である結果を選択します。
- [デプロイメント プラットフォーム] フィルタの [Compute Engine] をクリックします。
- NVIDIA DCGM のエントリを見つけて、[詳細を表示] をクリックします。
- [ダッシュボード] タブを選択すると、静的プレビューが表示されます。ダッシュボードがインストールされている場合は、[ダッシュボードを表示] をクリックして移動できます。
Cloud Monitoring のダッシュボードについて詳しくは、ダッシュボードとグラフをご覧ください。
[インテグレーション] ページの使用方法については、インテグレーションを管理するをご覧ください。
DCGM の制限事項とプロファイリングの一時停止
DCGM の同時使用は、Nsight Systems や Nsight Compute などの他の一部の NVIDIA デベロッパー ツールの使用と競合する可能性があります。 この制限事項は NVIDIA A100 以前の GPU に適用されます。詳細については、DCGM 機能の概要のサンプリング レートのプロファイリングをご覧ください。
大幅な中断なしで Nsight Systems などのツールを使用する必要がある場合は、次のコマンドを使用して指標の収集を一時的に停止または再開できます。
dcgmi profile --pause dcgmi profile --resume
プロファイリングが一時停止されていると、Ops エージェントが収集する DCGM 指標が VM から出力されません。
次のステップ
Ansible を使用して Ops エージェントをインストールし、サードパーティ アプリケーションを構成してサンプル ダッシュボードをインストールする方法については、Ops エージェントをインストールして、サードパーティ アプリケーションのトラブルシューティングを行うの動画をご覧ください。