news 2026/9/8 22:30:24

btop 终端显卡监控完整指南:NVIDIA、AMD、Intel 一屏看全

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
btop 终端显卡监控完整指南:NVIDIA、AMD、Intel 一屏看全

btop 终端显卡监控完整指南:NVIDIA、AMD、Intel 一屏看全

【免费下载链接】btopA monitor of resources项目地址: https://gitcode.com/GitHub_Trending/bt/btop

如果你想在终端里把 NVIDIA、AMD、Intel 三家显卡的运行状态一次看全,btop 的显卡监控模块大概是成本最低的方案:打开一个命令行窗口,核心利用率、显存占用、温度与功耗就铺在眼前,不必为每家显卡单独装一套图形化监控软件。

btop 本身是一款用 C++ 写的终端资源监控器,支持 Linux、macOS 和多个 BSD。GPU 监控从 v1.3.0 起进入 Linux 版,到 v1.4.0 又补上了 Intel 核显。它和top/htop的关系是:后者管 CPU 与进程,而 btop 在此基础上多叠了内存、网络和显卡几块面板,全部用字符画成曲线。

为什么把显卡监控搬进终端

图形化监控工具各有好处,但有两类场景终端更顺手:

  • 远程机器:SSH 到服务器或矿机上时,图形界面根本带不过去,而 btop 直接跑在 TTY 里,盲文点字画出的曲线一样清晰。
  • 低开销常驻:把 btop 挂在一个窗口里长期观察,比反复切到桌面看曲线省心。

对游戏党和渲染用户来说,终端版最大的价值是“即时”——负载一上来,曲线立刻有反应,不用再去别处查。

从零搭建:装对版本才有 GPU 面板

这一步最容易被忽略:发行版仓库、Homebrew 和 release 页里的预编译包都不带 GPU 支持(因为 GPU 数据依赖运行时加载的显卡动态库,无法静态打进这些二进制里)。所以想要显卡监控,基本得从源码编译。

先确认环境

  • 编译器满足要求:至少 GCC 14 或 Clang 19
  • 三家显卡各自的驱动/库已装好(见下文对比表)

克隆并编译

git clone https://gitcode.com/GitHub_Trending/bt/btop cd btop make sudo make install

x86_64 Linux 上GPU_SUPPORT默认就是开着的,不用额外加参数;想关掉才写make GPU_SUPPORT=false

给 Intel 核显(和 CPU 功耗)补权限

Intel iGPU 要读 SYSFS,需要额外授权:

sudo make setcap

装完运行btop,能看到显卡面板即成功。

启动后的第一眼:GPU 面板怎么调出来

btop 的显卡面板是按需显示的,默认不一定全开:

  • 按数字键567分别控制第 1、2、3 块 GPU 的显示/隐藏,0可一键收起全部
  • 想在 CPU 面板里顺带看 GPU 概览,可进 CPU 选项菜单里配置
  • F1打开帮助菜单查全部按键

多卡机器上建议固定把56都打开,一眼对比各卡负载。

三家显卡,三种取数方式

btop 没有一套代码打天下,而是按品牌走不同的取数通道,这也是它“开箱即支持”三家的底层原因:

显卡取数依赖前置条件面板可见指标
NVIDIANVML(nvidia-ml 动态库)官方驱动(闭源/开源均可)利用率、显存、温度、功耗、风扇、频率
AMDROCm SMI(rocm_smi_lib)发行版提供该库,或静态链接利用率、显存、温度、功耗等
Intel内置 intel_gpu_top(走 SYSFS)C 编译器 + 读 SYSFS 的权限利用率、功耗、核心频率

对应关系在代码里一目了然:NVIDIA/AMD 的采集集中在 src/linux/btop_collect.cpp 里动态加载 NVML、RSMI 符号,Intel 则由 src/linux/intel_gpu_top/ 这一套移植过来的工具负责,按引擎(engine)粒度统计占用。

两点提醒:

  • AMD若发行版没有rocm_smi_lib包,可用make RSMI_STATIC=true静态链接,但需要把 ROCm SMI 源码放进lib/rocm_smi_lib
  • Intel当前暴露的是利用率、功耗与频率三项,指标比前两家略少,属正常。

帧率掉到一半,先查哪里

把 btop 挂到旁边跑一局,用排除法定位瓶颈比盲猜快:

  • GPU 利用率长时间顶满、帧率却上不去→ 算力是硬瓶颈,降特效或换卡
  • 显存吃满、帧时间忽长忽短→ 爆显存导致的卡顿,常见于 4GB 以下小显存
  • 温度撞墙、频率被限制→ 散热跟不上,曲线会周期性“掉坑”
  • GPU 不高、CPU 先满→ 瓶颈其实在 CPU,调显卡参数没用

视频渲染(Blender、Premiere 之类)的看法定位类似:盯显存占用趋势,避免渲到一半 OOM;看温度曲线判断散热是否要升级;再对照 CPU 与 GPU 的曲线,确认两者是否都在干活、有没有一方空转。

把面板改成你的样子:配置与主题

进 btop 后按F2打开选项菜单,能调刷新间隔、要显示哪些 GPU 数值、曲线用哪种绘制方式;这些偏好会落盘到~/.config/btop/btop.conf,下次启动自动生效。

配色交给主题文件。themes/ 目录里预置了几十套,每个.theme文件用一组色键描述边框、文字和曲线的渐变,例如:

# themes/ 中的 .theme 文件(节选) theme[main_bg]="#1C1E26" theme[graph_text]="#f8f8f2" theme[temp_start]="#27D796" theme[temp_end]="#E95678"

想让 GPU 面板的曲线更跳眼,直接改对应的*_start/*_end渐变色即可;想整体换风格就挑一套现成的。

GPU 不显示?按这张清单走

显卡面板没出来时,多半是下面某一项没满足,从上往下核对:

  1. 驱动和取数库在位吗?NVIDIA 跑一下nvidia-smi确认;AMD 确认系统有rocm_smi_lib(或已静态链接)。
  2. 用的是源码编译版吗?预编译包不带 GPU 支持,且静态链接 glibc/musl 会让 NVIDIA/AMD 取数失效。
  3. Intel 用户执行过make setcap(或make setuid)吗?没授权就读不到 SYSFS。
  4. 多卡时是不是只开了5?按67把其它卡也调出来。
  5. 曲线变成乱码方块?是终端字体不支持盲文点字,换一套含 braille 字符的等宽字体即可。

下一步可以做什么

  • 追特性与修复看 CHANGELOG.md,安装与编译细节以 README.md 为准
  • 挑一套顺眼的主题丢进 themes/,按自己习惯微调渐变
  • 需要更细的 GPU 引擎级数据,读 src/linux/intel_gpu_top/ 的实现

把 btop 常驻在一个终端窗口里,CPU、内存、网络、显卡的曲线同屏滚动——负载一有异动,你比任何图形工具都先看见。

【免费下载链接】btopA monitor of resources项目地址: https://gitcode.com/GitHub_Trending/bt/btop

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/8 22:27:46

树莓派Pico ADC实战:从machine.ADC到定时温度采集与ISR避坑

先说个我自己的经历。第一次拿树莓派 Pico 玩 ADC,接了个 10k 电位器到 ADC0,读回来的数值在 18000 到 21000 之间乱跳,一开始我还以为板子坏了或者线没接好。后来把输入阻抗、参考电压、SAR 采样原理这些东西捋清楚,才发现这颗芯…

作者头像 李华
网站建设 2026/9/8 22:27:17

FPGA实现图像电子透雾的硬件化设计与工业落地

1. 项目概述:为什么在FPGA上做图像电子透雾不是“炫技”,而是工程刚需我第一次在煤矿井下调试高清视频监控系统时,被现场工程师拉到屏幕前指着一段实时画面说:“你看这雾,不是天气问题,是煤尘水汽LED补光混…

作者头像 李华
网站建设 2026/9/8 22:26:58

神经-炎症-生长因子复合标志物检测体系全新上线,云克隆 Luminex 多因子试剂盒赋能神经炎症与损伤修复研究

中枢神经系统损伤、神经退行性病变、缺血缺氧性脑病、颅脑创伤等疾病发生之后,脑组织局部会快速启动复杂的神经炎症级联反应,炎症因子、神经胶质激活标志物、神经元损伤释放蛋白、抗氧化应激分子、神经营养因子之间相互交织,共同决定神经组织…

作者头像 李华
网站建设 2026/9/8 22:23:22

AI互动故事中的生成式物品与背包设计:从数据结构到Agent实践

最近在做一个 AI 角色聊天 RPG 互动故事的产品原型,核心玩法很简单:用户扮演主角,AI 扮演各种角色,在对话里推进剧情。做到一半我发现一个特别要命的问题——如果角色在对话里给了玩家一瓶药水、一把钥匙,或者玩家捡到…

作者头像 李华