ホームページ >運用・保守 >Linuxの運用と保守 >Linux で一般的に使用される nvidia-smi コマンドは何ですか?

Linux で一般的に使用される nvidia-smi コマンドは何ですか?

王林
王林転載
2023-05-12 08:34:272825ブラウズ

はじめに

nvidia-smi - NVIDIA システム管理インターフェイス プログラム

nvidia smi (NVSMI とも呼ばれる) は、nvidia Tesla、Quadro、GRID、および GeForce デバイスのサポートを提供し、監視および管理機能を提供します。 。 GeForce Titan シリーズ デバイスはほとんどの機能をサポートしていますが、他の GeForce ブランドについては非常に限られた情報が提供されています。 NVSMI は、標準の NVIDIA ドライバーでサポートされるすべての Linux ディストリビューションと、Windows Server 2008 R2 以降の 64 ビット バージョンの Windows をサポートするクロスプラットフォーム ツールです。

✨nvidia-smi

NVIDIA システム管理インターフェイス (nvidia-smi) は、NVIDIA 管理ライブラリ (NVML) に基づくコマンド ライン ツールで、NVIDIA の管理と監視を支援するように設計されています。 GPU デバイス。

このユーティリティを使用すると、管理者は GPU デバイスのステータスをクエリしたり、適切な権限で GPU デバイスのステータスを変更したりできます。 Tesla、GRID、Quadro、Titan X 製品を対象としていますが、他の NVIDIA GPU のサポートも限定的です。

NVIDIA-smi には、Linux 上の NVIDIA GPU ディスプレイ ドライバー、64 ビット Windows Server 2008 R2 および Windows 7 が同梱されています。 Nvidia-smi は、クエリ情報を XML または人間が判読できるプレーン テキストとして標準出力またはファイルにレポートできます。

✨一般的に使用される nvidia-smi コマンドは、すべての GPU 情報を表示します

nvidia-smi

Linux で一般的に使用される nvidia-smi コマンドは何ですか?

GPU 情報を 1 秒ごとに更新します

nvidia-smi -l 1

現在のすべての GPU を一覧表示しますデバイス

nvidia-smi -L

Linux で一般的に使用される nvidia-smi コマンドは何ですか?

現在の GPU クロック速度、デフォルトのクロック速度、および可能な最大クロック速度の表示

nvidia-smi -q -d CLOCK

PS:

nvidia-smi コマンド

コマンドラインに直接入力nvidia-smi このコマンドは、すべての錬金術師がよく知っているコマンドである必要があります。

注: GPU のステータスを動的に観察するには、watch -n 0.5 nvidia-smi を使用することをお勧めします。

nvidia-smi コマンドを使用すると、次のような有益なページが表示されます。

2021年11月9日火曜日13:47:51
-------------------------------- -----------------------------------------------
| NVIDIA-SMI 495.44 ドライバー バージョン: 495.44 CUDA バージョン: 11.5 |
|----------------------------- -- -------------------- ----------------------
| GPU 名前 Persistence-M|バス ID Disp.A |揮発性の不正。 ECC |
|ファン温度パフォーマンス電力:使用量/キャップ|メモリ使用量 | GPU-Util Compute M. |
| | |ミグ M |
|=============================== ========== =========== ======================|
| 0 NVIDIA GeForce ... オフ | 00000000:17:00.0 オフ |該当なし |
| 62% 78C P2 155W / 170W | 10123MiB / 12051MiB | 100% デフォルト |
| | |該当なし |
----------------------------- ------------ ---------- -----------------------------
| 1 NVIDIA GeForce ... オフ | 00000000:65:00.0 オフ | N/A |
|100% 92C P2 136W / 170W | 10121MiB / 12053MiB | 99% デフォルト |
| | |該当なし |
----------------------------- ------------ ---------- -----------------------------
| 2 NVIDIA GeForce ... オフ | 00000000:B5:00.0 オフ |該当なし |
| 32% 34C P8 12W / 170W | 5MiB / 12053MiB | 0% デフォルト |
| | |該当なし |
----------------------------- ------------ ---------- -----------------------------
| 3 NVIDIA GeForce ... オフ | 00000000:B6:00.0 オフ |該当なし |
| 30% 37C P8 13W / 170W | 5MiB / 12053MiB | 0% デフォルト |
| | |該当なし |
----------------------------- ------------ ---------- -----------------------------

+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|    0   N/A  N/A      1258      G   /usr/lib/xorg/Xorg                  6MiB |
|    0   N/A  N/A     10426      C   ...a3/envs/JJ_env/bin/python    10111MiB |
|    1   N/A  N/A      1258      G   /usr/lib/xorg/Xorg                  4MiB |
|    1   N/A  N/A     10427      C   ...a3/envs/JJ_env/bin/python    10111MiB |
|    2   N/A  N/A      1258      G   /usr/lib/xorg/Xorg                  4MiB |
|    3   N/A  N/A      1258      G   /usr/lib/xorg/Xorg                  4MiB |
+-----------------------------------------------------------------------------+

其中显存占用和 GPU 利用率当然是我们最常来查看的参数,但是在一些情况下(比如要重点监控 GPU 的散热情况时)其他参数也很有用,笔者简单总结了一下该命令输出的各个参数的含义如下图:

Linux で一般的に使用される nvidia-smi コマンドは何ですか?

可以看到其中各个位置的对应含义在输出本身中其实都已经指出了(蓝框),红框则指出了输出各个部分的含义,大部分输出的作用一目了然,这里笔者将其中几个不那么直观的参数简单整理一下:

  • Fan:从0到100%之间变动,这个速度是计算机期望的风扇转速,实际情况下如果风扇堵转,可能打不到显示的转速。

  • Perf:是性能状态,从P0到P12,P0表示最大性能,P12表示状态最小性能。

  • Persistence-M:是持续模式的状态,持续模式虽然耗能大,但是在新的GPU应用启动时,花费的时间更少,这里显示的是off的状态。

  • Disp.A:Display Active,表示GPU的显示是否初始化。

  • Compute M:是计算模式。

  • Volatile Uncorr. ECC:是否开启 ECC 纠错。

  • type:进程类型。C 表示计算进程,G 表示图形进程,C+G 表示都有。

nvidia-smi 命令的其他参数

除了直接运行 nvidia-smi 命令之外,还可以加一些参数,来查看一些本机 Nvidia GPU 的其他一些状态。下面笔者简单介绍几个常用的参数,其他的有需要可以去手册中查找:man nvidia-smi

-L

-L 参数显示连接到系统的 GPU 列表。

nvidia-smi -L

# 输出:
GPU 0: NVIDIA GeForce RTX 3060 (UUID: GPU-55275dff-****-****-****-6408855fced9)
GPU 1: NVIDIA GeForce RTX 3060 (UUID: GPU-0a1e7f37-****-****-****-df9a8bce6d6b)
GPU 2: NVIDIA GeForce RTX 3060 (UUID: GPU-38e2771e-****-****-****-d5cbb85c58d8)
GPU 3: NVIDIA GeForce RTX 3060 (UUID: GPU-8b45b004-****-****-****-46c05975a9f0)

GPU UUID:此值是GPU的全球唯一不可变字母数字标识符。它与主板上的物理标签无关。

-i

-i 参数指定某个 GPU,多用于查看 GPU 信息时指定其中一个 GPU。

-q

-q 参数查看 GPU 的全部信息。可通过 -i 参数指定查看某个 GPU 的参数。

如:

nvidia-smi -i 0 -q

输出太长了,笔者这里就不列了,大家可以自己试一下,是很完整的信息。

topo

topo 展示多GPU系统的拓扑连接信息,通常配合 -m 参数即 nvidia-smi topo -m,其他参数可自行查阅。

输出如下,这里用代码块没法对齐,就直接贴图了:

Linux で一般的に使用される nvidia-smi コマンドは何ですか?

以上がLinux で一般的に使用される nvidia-smi コマンドは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。