lspci | grep -i vga
、nvidia-smi
(NVIDIA)、sudo lshw -C display
或intel_gpu_top
(Intel)。是几种在Linux系统中查看GPU卡详细信息的方法,涵盖不同厂商(NVIDIA、AMD、Intel)及通用工具的使用场景:
使用 lspci
命令检测PCI设备中的GPU信息
此方法适用于所有类型的显卡,通过枚举PCI总线上的设备实现基础识别。
- 操作步骤:
# 查找包含"VGA"关键字的设备(通用方案) lspci | grep -i vga # 若已知品牌如NVIDIA,可精准过滤 lspci | grep -i nvidia # 查看指定设备的详细参数(示例地址需替换实际值) lspci -v -s [设备ID] #lspci -v -s 04:00.0
- 输出解析:典型结果会显示类似
04:00.0 3D controller: NVIDIA Corporation GP104 [GeForce GTX 1080]
的内容,其中包含设备路径、厂商名称和型号,该命令还能提供中断号、内存映射范围等底层信息。 - 适用场景:快速确认系统是否识别到硬件,尤其适合未安装专用驱动时的初步排查。
NVIDIA专属工具 nvidia-smi
针对NVIDIA显卡的性能监控与状态管理工具,需预先安装官方驱动。
- 前提条件:确保已正确安装对应版本的NVIDIA驱动(如通过
apt/yum
包管理器或手动编译安装)。 - 执行方式:直接输入
nvidia-smi
,界面将实时展示以下关键指标:
| 字段 | 说明 | 示例值 |
|———————|————————————–|———————-|
| Fan | 风扇转速百分比 | N/A(被动散热时无数据)|
| Temp | 核心温度(℃) | 35C |
| Perf | 性能模式等级(P0=最大性能) | P0 |
| Pwr:Usage/Cap | 当前功耗/最大功率限制 | 25W / 300W |
| Memory-Usage | 已用显存/总容量 | 0MiB / 16160MiB |
| GPU-Util | GPU利用率百分比 | 0% |
| Processes | 正在使用该GPU的进程列表 | python train.py | - 扩展用法:结合
watch -n 10 nvidia-smi
实现每10秒刷新一次的动态监控。 - 优势:直观呈现负载分布、显存占用及进程关联关系,便于调试资源瓶颈问题。
系统级硬件查询命令组合
(1) lshw
全面硬件报告
sudo lshw -C display # "-C"参数指定过滤类别为显示器相关设备 ```包括设备描述、总线位置、驱动程序版本等结构化数据,例如对于GTX 1080会显示 `product: GP104 [GeForce GTX 1080]`,并标注驱动模块为 `driver=nvidia`。 # (2) `hwinfo --gfxcard` 深度解析 此命令生成详尽的配置清单,涵盖时钟频率、支持的视频编码格式等高级属性,适合需要完整技术规格的场景,但信息量较大需耐心浏览。 # (3) OpenGL环境验证——`glxinfo` ```bash glxinfo | grep -i "dedicated video"
可获取GPU分配给显示任务的专用内存大小,辅助判断虚拟化环境中的3D渲染能力是否正常。
其他厂商方案
AMD显卡监控——radeontop
安装并运行 sudo apt install radeontop && radeontop
,以图形化界面展示GPU时钟频率、温度曲线和计算单元活跃度,特别适合ROCm开源驱动下的能效优化分析。
Intel核显诊断工具链
- 基础信息采集:
sudo apt install inxi && inxi -F
,在输出段落中找到 “Graphics” 部分获取集成显卡型号。 - 驱动稳定性测试:
sudo apt install intel-gpu-tools && i915_verify_state --display
,验证内核模式设置是否符合预期。
图形化工具辅助(可选)
当偏好可视化操作时,推荐安装 hardinfo
:
sudo apt install hardinfo # Debian/Ubuntu系适用
启动后切换至 “设备” 标签页,可交互式查看各组件拓扑结构,对桌面用户友好且无需记忆复杂指令。
常见疑问解答(FAQs)
Q1: nvidia-smi
报错“command not found”,如何解决?
✅ 原因:未安装NVIDIA驱动或环境变量未配置。
📌 解决步骤:
① 确认驱动已安装:dpkg -l | grep nvidia
;
② 若缺失则添加CUDA仓库后重新安装;
③ 确保PATH包含/usr/local/bin目录(通常安装路径)。
Q2: 为什么 lspci
能看到设备但无法初始化3D加速?
✅ 可能原因:内核模块加载失败或权限不足。
📌 排查方法:
① 检查dmesg日志:dmesg | grep -i nvidia
寻找错误提示;
② 执行 sudo modprobe nvidia
强制加载驱动模块;
③ 验证用户组归属:确认当前用户属于 video
组(通过 groups $USER
)。
通过上述方法组合使用,可全面掌握Linux系统中GPU的硬件状态、驱动兼容性和应用层性能表现,建议根据实际需求选择合适的工具,例如服务器端侧重命令行效率,而工作站用户可能更倾向
原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/93606.html