btop GPU 监控完整指南30 分钟跑通多品牌数据采集【免费下载链接】btopA monitor of resources项目地址: https://gitcode.com/GitHub_Trending/bt/btop渲染跑到第 40 分钟突然掉帧你第一反应是看 CPU 还是 GPU如果要在 nvidia-smi、rocm-smi 和几个 sysfs 路径之间来回切换才能找到答案btop GPU 监控能省掉很多事它把 NVIDIA、AMD、Intel 三家显卡的数据收进同一个程序画在同一块屏上。本文解决什么你要解决的问题去哪里看我的机器能不能跑多品牌 GPU 监控「30 分钟上手」第一阶段环境确认怎么编译出带 GPU 支持的版本「30 分钟上手」第二、三阶段NVIDIA / AMD / Intel 各读什么数据「三家数据源」三个小节渲染时怎么判断瓶颈「渲染监控」三条要点它怎么采到数据的btop 的 GPU 监控分三层。采集层src/linux/btop_collect.cpp不在编译期硬链任何厂商库而是运行时用 dlopen/dlsym 加载 NVIDIA 的 libnvidia-ml.so 和 AMD 的 ROCm SMI 库Intel 走另一条路——项目内嵌了 intel_gpu_top 的移植逻辑直接读 sysfs 里的每引擎 PMU 计数器结构定义见src/linux/intel_gpu_top/intel_gpu_top.h。采集结果统一装进 gpu_info 结构渲染层再按盒子画曲线。这个设计的好处是某个品牌的驱动没装它就不出现另外两家照常工作。30 分钟上手从环境确认到跑通第一条曲线阶段一环境确认——先别急着编译x86_64 上GPU_SUPPORT参数默认就是 true缺的几乎都是驱动侧。三条命令确认清楚nvidia-smi # NVIDIA官方驱动 NVML 库 ls /dev/kfd # AMDamdgpu 的 HSA 内核接口 ls /sys/class/drm # 三家通用card0/card1 设备节点NVIDIA 必须用官方驱动闭源和开源内核模块都验证过nvidia-ml 动态库随驱动包自带AMD 依赖 rocm_smi_lib部分发行版不打包Intel 只需要一个 C 编译器和 sysfs 读权限。阶段二编译安装git clone https://gitcode.com/GitHub_Trending/bt/btop cd btop make sudo make install # x86_64 默认开启 GPU 支持 sudo make setcap # Intel 核显与 CPU 功耗需要参数默认作用GPU_SUPPORTtruex86_64开启 GPU 监控false 可关RSMI_STATICfalse静态链接 ROCm SMIAMD 无系统包时用STATICfalse静态链接——注意会废掉GPU 监控动态库加载失效DEBUGfalse详细日志排查问题用阶段三验证生效btop -u 1000 # 1000ms 刷新曲线填得快验证更直观按 F2或 o进选项菜单在 Manually set which boxes to show 一项里加入gpu0、gpu1每张卡一个。回主界面按 5、6、7 切换各卡独立盒子的显隐按 0 显示共享概览图——平均利用率、总功耗、总显存三条曲线。设置会写入~/.config/btop/btop.conf的shown_boxes项下次启动自动生效。三家数据源NVIDIA、AMD、Intel 各读什么NVIDIA 显卡利用率怎么查全从 NVML 拿NVIDIA 路径的数据全部来自 NVMLGPU 与显存双利用率、显存总量/已用、温度及关断阈值、图形/显存双频、功耗、PCIe 双向吞吐、编解码器利用率。源码运行时 dlopen 加载不静态链接也不用额外装驱动包。多卡系统里每张卡独立成盒键位 5、6、7 依次对应 gpu0、gpu1、gpu2。AMD ROCm 配置步骤与 sysfs 兜底AMD 首选 ROCm SMI读计算单元利用率、显存、温度和功耗。消费级卡上如果 ROCm 库枚举不到设备源码里还有一条 sysfs 兜底路径直接读/sys/class/drm没有 rocm_smi_lib 也不至于完全空白。发行版没有包的话两条路装 ROCm SMI 包或编译时加RSMI_STATICtrue静态链接。盒子的显隐、位置都可以在选项菜单里调整Intel 核显权限问题与引擎级监控Intel 是三家中最特别的一个v1.4.0 起直接移植了 intel_gpu_top 的逻辑逐引擎读忙计数器还能看到 RC6 节能状态、实际频率和内存控制器读写带宽。注意它只有利用率、功耗和频率——核显共享主存没有独立显存可拆。读 PMU 计数器需要额外权限这是 Intel 支持最常见的坑装完执行一次sudo make setcap或make setuid即可之后不用每次 sudo。渲染监控看三件事以 Blender 长渲染为例btop 能直接回答三个问题显存是硬指标used 条持续 90% 以上还伴随卡顿多半是显存吃紧降分辨率或减帧数这比盯着单卡命令直观。按 0 看总览平均利用率、总功耗、总显存三条曲线不用盯单卡就能判断整机是否打满。和 CPU 关联看GPU 利用率掉到 0% 但渲染进程还活着通常是单核或 IO 在等——这时看进程列表顶部是谁别怪卡。快速排障三个最常见的故障NVIDIA 不显示→ libnvidia-ml.so 缺失或用了静态构建 →ldconfig -p | grep nvidia-ml确认库存在STATICtrue 编出来的版本不支持 GPU 监控换动态构建。AMD 缺功耗/温度→ rocm_smi_lib 太旧或未安装 → 装发行版的 ROCm SMI 包或RSMI_STATICtrue重编。Intel 核显无数据→ sysfs PMU 读权限不足 → 安装后执行sudo make setcap或直接用 sudo 启动验证是否是权限问题。btop 本质是个日常资源监控程序GPU 监控是 Linux x86_64 上的加分能力。git clone https://gitcode.com/GitHub_Trending/bt/btop踩过的坑欢迎评论区聊聊。【免费下载链接】btopA monitor of resources项目地址: https://gitcode.com/GitHub_Trending/bt/btop创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考