nvidia-smi 介绍
nvidia-smi
(NVIDIA System Management Interface)是NVIDIA提供的命令行工具,用于监控和管理NVIDIA显卡的状态和性能。它是NVIDIA驱动程序的一部分,能够在Linux、Windows等操作系统上使用。以下是nvidia-smi
的一些功能和常见用途:
nvidia-smi 的主要功能
GPU信息显示:
- 提供有关GPU硬件的信息,包括型号、显存容量、驱动版本等。
GPU利用率监控:
- 实时显示每个GPU的利用率、显存使用情况、温度和功耗。
- 帮助识别资源使用瓶颈,提高性能分析和调优。
进程监控:
- 列出正在使用GPU的当前进程,了解哪些应用或用户占用了GPU资源。
驱动和CUDA版本:
- 显示当前加载的NVIDIA驱动程序版本和CUDA版本信息,确保环境正确配置。
功耗限制管理(在支持的设备上):
- 可以通过命令调整功耗上限,以优化性能和能效。
持久模式设置:
- 允许开启持久模式,以保持GPU在重新启动之间的初始化状态,加速某些应用的启动时间。
常用命令示例
检查GPU状态:
nvidia-smi
这将输出GPU的实时状态,包括型号、温度、功率、显存使用等概览信息。
更新频率信息:
nvidia-smi --query-gpu=utilization.gpu,utilization.memory --format=csv
以CSV格式输出具体的信息,便于更精确的数据分析和记录处理。
查看指定进程:
nvidia-smi --query-compute-apps=pid,process_name,used_gpu_memory --format=csv
这样可以列出所有当前正在使用GPU的进程及其显存使用情况。
设置功耗上限(在支持电源管理的设备中):
nvidia-smi -pl <power_limit_w>
将<
power_limit_w
>替换为功率限制数值(单位瓦特)。
注意事项
- 管理员权限: 某些高级操作可能需要管理员权限才能执行,确保在必要时与系统管理员协调。
- 兼容性: 需要确保NVIDIA驱动版本兼容当前硬件和
nvidia-smi
版本以避免报错或不兼容问题。 - 定制化监控: 可以编写脚本结合
nvidia-smi
进行GPU监控和管理,适合需要持续观察设备的使用案例。
通过使用nvidia-smi
,开发者和系统管理员可以有效地监督和管理NVIDIA GPU的运行状态,从而更好地优化性能,保障机器的计算稳定性和效率。