温馨提示×

Linux CPUInfo怎样识别GPU信息

小樊
46
2025-11-29 07:48:40
栏目: 智能运维

Linux 中识别 GPU 信息的正确方法

核心结论

  • /proc/cpuinfo 只显示 CPU 信息,不包含 GPU 信息。要识别 GPU,应使用面向 PCI/显示设备的工具(如 lspci、lshw)或厂商工具(如 NVIDIA 的 nvidia-smi)。必要时结合 OpenGL/OpenCL 查询渲染与计算能力。对于虚拟机,还需确认是否透传了 GPU 设备。

快速识别步骤

  • 使用 lspci 快速定位 GPU 设备
    • 执行:lspci | grep -iE “vga|3d|display”
    • 关注输出中的厂商与型号字段,例如:NVIDIA Corporation GA102 [GeForce RTX 3090]。多卡时可加 -nn 显示设备编号(如 [10de:2204]),便于后续定位。
  • 查看详细硬件与驱动绑定
    • 执行:sudo lshw -C display
    • 可看到 product(型号)、vendor(厂商)、configuration: driver=…(绑定驱动)、bus info(如 0000:01:00.0)等关键信息。
  • 厂商工具与运行信息
    • NVIDIA:执行 nvidia-smi
    • 可查看 型号、驱动版本、显存、利用率、温度、进程占用 等;如需更细信息可用 nvidia-smi -q,或持续监控 nvidia-smi -l 2。
  • 渲染与计算能力验证
    • OpenGL:glxinfo | grep -i “opengl renderer|direct rendering”
    • OpenCL:clinfo(可查看 GPU 设备名称、驱动版本、计算单元 等)。

虚拟机与容器场景

  • 虚拟机
    • 先确认是否透传 GPU:lspci | grep -i nvidia(或 grep -i vga)
    • 检查是否启用加速:glxinfo | grep -i “direct rendering”(返回 yes 表示启用)
    • 查看驱动与设备:lsmod | grep nvidia、dmesg | grep -i nvidia;必要时检查虚拟化平台(如 vGPU/直通)配置。
  • 容器
    • 确保容器能访问 GPU 设备文件,例如挂载:/dev/nvidia0、/dev/nvidiactl 等,再在容器内运行 nvidia-smi 或相应厂商工具。

常见故障排查

  • 设备未识别
    • 检查 PCIe 链路与插槽:lspci -vvv | grep -A 20 “” | grep LnkSta
    • 检查内核模块:lsmod | grep nvidia;查看内核日志:dmesg | grep -i nvidia
    • 确认驱动与硬件兼容、供电与物理连接正常。
  • 驱动加载但信息不全
    • 用 lshw -C display 确认 driver=… 是否加载正确;必要时重装/升级驱动并重启。

0