您好,登录后才能下订单哦!
nvidia-smi
是 NVIDIA 提供的一个命令行工具,用于监控和管理 NVIDIA GPU 设备。它可以帮助用户查看 GPU 的状态、温度、内存使用情况、功耗等信息,并且可以执行一些管理操作,如设置 GPU 的运行模式、重置 GPU 等。
在使用 nvidia-smi
之前,首先需要确保系统已经安装了 NVIDIA 驱动程序。可以通过以下步骤安装:
nvidia-smi
如果命令执行成功并显示 GPU 信息,说明驱动已经安装。
如果没有安装驱动,可以通过以下方式安装:
sudo apt-get update
sudo apt-get install nvidia-driver-<version>
其中 <version>
是你想要安装的驱动版本号。
sudo yum install nvidia-driver-<version>
访问 NVIDIA 驱动下载页面,选择适合你系统的驱动版本并下载。然后执行以下命令:
sudo sh NVIDIA-Linux-x86_64-<version>.run
在某些情况下,可能需要配置环境变量以确保 nvidia-smi
能够正确识别 GPU 设备。可以通过以下方式配置:
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
最基本的命令是直接运行 nvidia-smi
,它会显示当前系统中所有 NVIDIA GPU 的状态信息。
nvidia-smi
输出示例:
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 450.80.02 Driver Version: 450.80.02 CUDA Version: 11.0 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 Tesla V100-SXM2... On | 00000000:00:04.0 Off | 0 |
| N/A 35C P0 54W / 300W | 1094MiB / 16160MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
使用 -q
或 --query
选项可以查看更详细的 GPU 信息。
nvidia-smi -q
输出示例:
==============NVSMI LOG==============
Timestamp : Thu Oct 5 14:30:00 2023
Driver Version : 450.80.02
CUDA Version : 11.0
Attached GPUs : 1
GPU 00000000:00:04.0
Product Name : Tesla V100-SXM2-16GB
Product Brand : Tesla
Display Mode : Disabled
Display Active : Disabled
Persistence Mode : Enabled
Accounting Mode : Disabled
Accounting Mode Buffer Size : 4000
Driver Model
Current : N/A
Pending : N/A
Serial Number : 0324217071234
GPU UUID : GPU-12345678-1234-1234-1234-123456789012
Minor Number : 0
VBIOS Version : 88.00.4E.00.01
MultiGPU Board : No
Board ID : 0x400
GPU Part Number : 900-2G500-0000-000
Inforom Version
Image Version : G500.0204.00.02
OEM Object : 1.1
ECC Object : 5.0
Power Management Object : N/A
GPU Operation Mode
Current : Compute
Pending : Compute
GPU Virtualization Mode
Virtualization Mode : None
IBMNPU
Relaxed Ordering Mode : N/A
PCI
Bus : 0x00
Device : 0x04
Domain : 0x0000
Device Id : 0x1DB410DE
Bus Id : 00000000:00:04.0
Sub System Id : 0x12A210DE
GPU Link Info
PCIe Generation
Max : 3
Current : 3
Link Width
Max : 16x
Current : 16x
Bridge Chip
Type : N/A
Firmware : N/A
Replays Since Reset : 0
Tx Throughput : 0 KB/s
Rx Throughput : 0 KB/s
Atomic Caps Inbound : N/A
Atomic Caps Outbound : N/A
Fan Speed : N/A
Performance State : P0
Clocks Throttle Reasons
Idle : Not Active
Applications Clocks Setting : Not Active
SW Power Cap : Not Active
HW Slowdown : Not Active
Sync Boost : Not Active
SW Thermal Slowdown : Not Active
Display Clock Setting : Not Active
FB Memory Usage
Total : 16160 MiB
Used : 1094 MiB
Free : 15066 MiB
BAR1 Memory Usage
Total : 16384 MiB
Used : 2 MiB
Free : 16382 MiB
Compute Mode : Default
Utilization
GPU : 0 %
Memory : 0 %
Encoder : 0 %
Decoder : 0 %
ECC Mode
Current : Enabled
Pending : Enabled
ECC Errors
Volatile
Single Bit : 0
Double Bit : 0
Aggregate
Single Bit : 0
Double Bit : 0
Retired Pages
Single Bit ECC : 0
Double Bit ECC : 0
Pending Page Blacklist : N/A
Temperature
GPU Current Temp : 35 C
GPU Shutdown Temp : 95 C
GPU Slowdown Temp : 90 C
GPU Max Operating Temp : 88 C
Memory Current Temp : N/A
Memory Max Operating Temp : N/A
Power Readings
Power Management : Supported
Power Draw : 54.00 W
Power Limit : 300.00 W
Default Power Limit : 300.00 W
Enforced Power Limit : 300.00 W
Min Power Limit : 100.00 W
Max Power Limit : 300.00 W
Clocks
Graphics : 1380 MHz
SM : 1380 MHz
Memory : 877 MHz
Video : 1245 MHz
Applications Clocks
Graphics : N/A
Memory : N/A
Default Applications Clocks
Graphics : 1380 MHz
Memory : 877 MHz
Max Clocks
Graphics : 1530 MHz
SM : 1530 MHz
Memory : 877 MHz
Video : 1377 MHz
Max Customer Boost Clocks
Graphics : N/A
Clock Policy
Auto Boost : N/A
Auto Boost Default : N/A
Processes
GPU Memory Usage : N/A
使用 -q -d PIDS
选项可以查看当前正在使用 GPU 的进程信息。
nvidia-smi -q -d PIDS
输出示例:
==============NVSMI LOG==============
Timestamp : Thu Oct 5 14:30:00 2023
Driver Version : 450.80.02
CUDA Version : 11.0
Attached GPUs : 1
GPU 00000000:00:04.0
Processes
Process ID : 1234
Type : C
Name : python
Used GPU Memory : 1094 MiB
使用 -l
或 --loop
选项可以实时监控 GPU 的状态。默认情况下,每 1 秒刷新一次。
nvidia-smi -l
可以通过 -i
选项指定监控的 GPU 设备编号。
nvidia-smi -l -i 0
使用 -q -d TEMPERATURE
选项可以查看 GPU 的温度信息。
nvidia-smi -q -d TEMPERATURE
输出示例:
==============NVSMI LOG==============
Timestamp : Thu Oct 5 14:30:00 2023
Driver Version : 450.80.02
CUDA Version : 11.0
Attached GPUs : 1
GPU 00000000:00:04.0
Temperature
GPU Current Temp : 35 C
GPU Shutdown Temp : 95 C
GPU Slowdown Temp : 90 C
GPU Max Operating Temp : 88 C
Memory Current Temp : N/A
Memory Max Operating Temp : N/A
使用 -q -d POWER
选项可以查看 GPU 的功耗信息。
nvidia-smi -q -d POWER
输出示例:
==============NVSMI LOG==============
Timestamp : Thu Oct 5 14:30:00 2023
Driver Version : 450.80.02
CUDA Version : 11.0
Attached GPUs : 1
GPU 00000000:00:04.0
Power Readings
Power Management : Supported
Power Draw : 54.00 W
Power Limit : 300.00 W
Default Power Limit : 300.00 W
Enforced Power Limit : 300.00 W
Min Power Limit : 100.00 W
Max Power Limit : 300.00 W
使用 -pm
或 --persistence-mode
选项可以设置 GPU 的持久模式。持久模式可以防止 GPU 在空闲时自动关闭,从而减少启动时间。
nvidia-smi -pm 1
使用 -c
或 --compute-mode
选项可以设置 GPU 的计算模式。计算模式决定了 GPU 是否可以被多个进程共享。
nvidia-smi -c 0
其中 0
表示默认模式,允许多个进程共享 GPU。
在某些情况下,可能需要重置 GPU 以解决一些异常状态。可以使用 -r
或 --reset
选项来重置 GPU。
nvidia-smi -r
使用 -q -d UTILIZATION
选项可以查看 GPU 的使用率信息。
nvidia-smi -q -d UTILIZATION
输出示例:
==============NVSMI LOG==============
Timestamp : Thu Oct 5 14:30:00 2023
Driver Version : 450.80.02
CUDA Version : 11.0
Attached GPUs : 1
GPU 00000000:00:04.0
Utilization
GPU : 0 %
Memory : 0 %
Encoder : 0 %
Decoder : 0 %
使用 -q -d MEMORY
选项可以查看 GPU 的内存使用情况。
nvidia-smi -q -d MEMORY
输出示例:
==============NVSMI LOG==============
Timestamp : Thu Oct 5 14:30:00 2023
Driver Version : 450.80.02
CUDA Version : 11.0
Attached GPUs : 1
GPU 00000000:00:04.0
FB Memory Usage
Total : 16160 MiB
Used : 1094 MiB
Free : 15066 MiB
BAR1 Memory Usage
Total : 16384 MiB
Used : 2 MiB
Free : 16382 MiB
使用 -q -d ECC
选项可以查看 GPU 的 ECC 错误信息。
nvidia-smi -q -d ECC
输出示例:
==============NVSMI LOG==============
Timestamp : Thu Oct 5 14:30:00 2023
Driver Version : 450.80.02
CUDA Version : 11.0
Attached GPUs : 1
GPU 00000000:00:04.0
ECC Mode
Current : Enabled
Pending : Enabled
ECC Errors
Volatile
Single Bit : 0
Double Bit : 0
Aggregate
Single Bit : 0
Double Bit : 0
Retired Pages
Single Bit ECC : 0
Double Bit ECC : 0
Pending Page Blacklist : N/A
nvidia-smi
命令无法执行问题描述: 执行 nvidia-smi
命令时,提示命令未找到。
解决方案: 确保 NVIDIA 驱动已经正确安装,并且 nvidia-smi
的路径已经添加到系统的 PATH
环境变量中。
export PATH=/usr/local/cuda/bin:$PATH
问题描述: GPU 温度过高,可能导致系统不稳定或 GPU 损坏。
解决方案: 可以通过以下方式降低 GPU 温度:
nvidia-settings -a "[gpu:0]/GPUFanControlState=1"
nvidia-settings -a "[fan:0]/GPUTargetFanSpeed=100"
nvidia-smi -i 0 -ac 2505,875
问题描述: 运行深度学习模型时,提示 GPU 内存不足。
解决方案: 可以通过以下方式优化 GPU 内存使用:
问题描述: GPU 使用率低,导致训练速度慢。
解决方案: 可以通过以下方式提高 GPU 使用率:
nvidia-smi
是一个功能强大的工具,可以帮助用户监控和管理 NVIDIA GPU 设备。通过本文的介绍,你应该已经掌握了 nvidia-smi
的基本用法和一些高级技巧。希望这些内容能够帮助你更好地利用 GPU 资源,提升工作效率。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。