在 Linux 系统中查看 GPU 占用情况,主要取决于你的 GPU 类型(NVIDIA/AMD),以下是常用方法:
一、NVIDIA GPU(最常用,如 RTX 系列、Tesla 系列)
使用 NVIDIA 官方工具 nvidia-smi
(需安装 NVIDIA 驱动):
1. 基本查看
直接在终端运行:
nvidia-smi
输出内容包含:
- GPU 编号、名称、驱动版本
- 显存使用情况(Total/Used/Free)
- GPU 利用率(GPU-Util)
- 温度(Temperature)
- 占用 GPU 的进程(PID、进程名、显存占用)
2. 实时监控(每秒刷新)
watch -n 1 nvidia-smi # 1秒刷新一次,按Ctrl+C退出
3. 更简洁的输出
nvidia-smi --query-gpu=name,memory.total,memory.used,memory.free,temperature.gpu,utilization.gpu --format=csv
自定义需要的参数(更多参数可通过 nvidia-smi --help-query-gpu
查看)。
二、AMD GPU
使用 ROCm 工具链中的 rocm-smi
(需安装 ROCm 驱动):
1. 基本查看
rocm-smi
输出包含 GPU 型号、温度、显存使用、利用率等信息。
2. 实时监控
watch -n 1 rocm-smi
三、通用工具(支持多品牌)
1. gpustat
(更友好的命令行工具)
- 安装:
pip install gpustat
(需要 Python 环境) - 使用:
gpustat # 简洁显示GPU状态
gpustat -i # 显示进程详情(如PID和进程名)
watch -n 1 gpustat # 实时监控
2. glances
(系统监控工具,支持 GPU)
- 安装:
sudo apt install glances
(Ubuntu/Debian) - 使用:运行
glances
,在界面中找到 GPU 相关指标(需系统支持)。
四、注意事项
- 若
nvidia-smi
提示命令不存在,说明未安装 NVIDIA 驱动,需先安装对应版本的驱动。 - 对于服务器级 GPU(如 Tesla),输出内容可能包含更多功耗、性能状态等信息。
- 若需查看特定进程占用的 GPU 资源,可结合
ps
命令进一步分析,例如:
ps -p \<PID> -o %cpu,%mem,cmd # 查看某个PID的CPU/内存占用
根据你的 GPU 类型选择对应工具即可快速掌握 GPU 的占用情况。