了解GPU从nvidia-smi命令开始

本文介绍 NVIDIA 的 nvidia-smi 工具,该工具基于 NVIDIA Management Library 实现,用于管理及监控 NVIDIA GPU 设备。文章详细讲解了 nvidia-smi 的常见用法,包括如何检查 GPU 的基本信息、vGPU 状态、GPU 资源占用情况等。此工具适用于 Tesla、GRID、Quadro 和 Titan X 等产品。

前言

相信各位在安装完NVIDIA GRID软件以后,官方建议的第一种验证GRID是否成功安装的方法就是在命令行下执行nvidia-smi,查看GPU信息是否可以正常的输出来判断GRID是否正常安装。今天我们就重点了解下NVIDIAGPU最重要的命令之一nvidia-smi。

原文:https://developer.nvidia.com/nvidia-system-management-interface

首先我们来看官方对nvidia-smi的定义:

1 基于NVIDIA Management Library (NVIDIA管理库),实现NVIDIA GPU设备的管理和监控功能

2 主要支持Tesla, GRID, Quadro以及TitanX的产品,有限支持其他的GPU产品

所以我们在常见的NVIDIAGPU产品上安装完驱动后,都同时安装上nvidia-smi管理工具,帮助管理人员通过命令行的方式对GPU进行监控和管理。

当我们成功部署了GRID软件以后,我们可以通过以下nvidia-smi命令实现对GPU的管理。

nvidia-smi会随着GRID软件不断的升级,而功能不断的丰富,所以当我们在执行一些复杂的nvidia-smi命令时,可能早期的GRID版本无法支持这些命令。本文的命令基于GRID 5版本,所以在使用的时候请有所注意:

以下nvidia-smi常用命令行是个人推荐了解的:

1. nvidia-smi

nvidia-smi会显示出当前GPU的所有基础信息。

2. nvidia-smi vgpu

查看当前vGPU的状态信息:

3. nvidia-smi vgpu -p 循环显示虚拟桌面中应用程序对GPU资源的占用情况

4. nvidia-smi -q 查看当前所有GPU的信息,也可以通过参数i指定具体的GPU。

比如nvidia-smi-q -i 0 代表我们查看服务器上第一块GPU的信息。

通过nvidia-smi -q 我们可以获取以下有用的信息:

GPU的SN号、VBIOS、PN号等信息:

GPU的总线、PCI-E总线倍速、风扇转速等信息:

GPU的显存、BAR1、所有资源利用率、ECC模式等信息:

GPU的温度和功率等信息:

通过以上的命令我们基本上可以对当前vGPU环境的物理GPU和正在运行的vGPU有一个基本的了解,为我们后续的性能调优和故障排错提供保证。

欢迎关注 欢迎转载
在 Linux 系统中,如果遇到找不到 `nvidia-smi` 命令的问题,通常是由于 NVIDIA 驱动未正确安装、驱动版本不兼容或环境变量未配置导致的。以下是几种常见的解决方案: ### 1. 安装或重新安装 NVIDIA 显卡驱动 确保系统中已安装 NVIDIA 官方驱动。可以通过以下步骤进行安装: - 添加 NVIDIA 的软件仓库(以 Ubuntu/Debian 系统为例): ```bash sudo apt update sudo apt install nvidia-driver-<version> ``` 其中 `<version>` 是所需的驱动版本号,如 `535` 或 `525`。 - 使用 `.run` 文件手动安装驱动: - 从 [NVIDIA 官网](https://www.nvidia.com/Download/index.aspx) 下载适用于当前 GPU 的驱动文件。 - 切换到字符界面并停止图形界面服务: ```bash sudo systemctl isolate multi-user.target ``` - 给驱动文件添加可执行权限并运行安装: ```bash chmod +x NVIDIA-Linux-x86_64-<version>.run sudo ./NVIDIA-Linux-x86_64-<version>.run ``` ### 2. 检查环境变量是否包含 `/usr/bin/nvidia-smi` 确认 `nvidia-smi` 所在路径是否已被加入系统的 `PATH` 环境变量中。通常该命令位于 `/usr/bin/` 或 `/usr/local/nvidia/bin/` 目录下。可以使用以下命令检查: ```bash which nvidia-smi ``` 如果没有输出路径,可以尝试手动将其路径加入 `PATH`: ```bash export PATH=/usr/local/nvidia/bin:$PATH ``` 为了永久生效,可以将上述命令写入 `~/.bashrc` 或 `~/.zshrc` 文件中。 ### 3. 安装 CUDA Toolkit(若需使用深度学习框架) 某些情况下,`nvidia-smi` 可能随 CUDA Toolkit 一起安装。如果仅安装了基础驱动但未安装完整的 CUDA 工具包,可能会缺少相关组件。可以尝试安装完整工具链: ```bash sudo apt install cuda-toolkit-<version> ``` ### 4. 检查驱动是否加载成功 运行以下命令查看内核模块是否加载: ```bash lsmod | grep nvidia ``` 如果没有输出,则说明驱动未正常加载,可能需要重启系统或重新安装驱动。 ### 5. 使用容器化方案(如 Docker)运行 `nvidia-smi` 如果主机环境无法直接安装 NVIDIA 驱动,可以考虑使用支持 GPU 的 Docker 容器。首先安装 [NVIDIA Container Toolkit](https://github.com/NVIDIA/nvidia-docker),然后运行容器: ```bash docker run --rm --gpus all nvidia/cuda:11.8.0-base nvidia-smi ``` ### 6. 检查操作系统与硬件兼容性 某些老旧的 Linux 发行版或轻量级发行版(如 Alpine Linux)可能不支持 NVIDIA 驱动开箱即用。在这种情况下,建议切换到主流发行版(如 Ubuntu LTS)或使用官方推荐的内核版本。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值