linux命令行怎么查显存
linux命令行怎么查显存详细介绍
在 Linux 命令行中查看显存(GPU 内存)的方法取决于显卡类型(NVIDIA、AMD 或集成显卡),以下是常用方法:
一、NVIDIA 显卡(最常用)
1. 使用
nvidia-smi(NVIDIA System Management Interface)
这是 NVIDIA 官方提供的工具,需安装 NVIDIA 驱动后使用,可显示详细的 GPU 信息,包括显存使用情况。
bash
nvidia-smi
输出示例(关键部分):
plaintext
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC || Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 NVIDIA GeForce... Off | 00000000:01:00.0 On | N/A |
| 0% 45C P8 10W / 250W | 312MiB / 8192MiB | 0% Default |
Memory-Usage:格式为 已用显存 / 总显存(如312MiB / 8192MiB)。
2. 仅获取显存数值(简洁格式)
bash
nvidia-smi --query-gpumemory.total,memory.used,memory.free csv,noheader,nounits
输出示例(单位为 MiB):
plaintext
8192, 312, 7880
二、AMD 显卡
1. 使用
rocm-smi(适用于 ROCm 驱动,AMD 高性能计算场景)
bash
rocm-smi
2. 使用
amdgpu-smi(适用于 AMD 显卡通用场景,需安装驱动)
bash
amdgpu-smi
三、集成显卡(Intel/AMD 核显)
集成显卡通常共享系统内存,显存信息可通过以下方式查看:
1. 通过系统文件(通用方法)
bash
/sys/class/drm/card0/gpu_memory_info/total,used,free_bytes
card0可能需要根据实际设备名调整(如card1),可通过ls /sys/class/drm/查看。- 输出单位为字节,可转换为 MiB:
awk '{print $1/1024/1024}'。
2. 使用
glxinfo(显示图形相关信息)
bash
glxinfo
可能显示类似 Video memory: 8192MB(具体取决于驱动支持)。
四、通用注意事项
- 驱动依赖:
- NVIDIA 需安装
nvidia-driver,AMD 需安装对应驱动(如amdgpu-pro),集成显卡依赖系统默认驱动。 - 若
nvidia-smi或amdgpu-smi命令不存在,需先安装驱动或工具包。
- NVIDIA 需安装
- 区分显存与系统内存:
- 独立显卡(NVIDIA/AMD)有独立显存,集成显卡共享系统内存(如
free -h显示的是系统内存,非显存)。
- 独立显卡(NVIDIA/AMD)有独立显存,集成显卡共享系统内存(如
- 实时监控工具:
- 可使用
watch -n 1 nvidia-smi或glances工具实时监控显存变化。
- 可使用
总结
- NVIDIA 显卡:首选
nvidia-smi,简单直观。 - AMD 显卡:根据驱动类型选择
rocm-smi或amdgpu-smi。 - 集成显卡:通过系统文件(
/sys/class/drm/)或glxinfo查看。
根据你的显卡类型选择对应方法即可。