nvtop:当 nvidia-smi 不够直观时,这个开源 GPU 监视器给了一个 htop 风格的答案

nvtop 是一个基于 ncurses 的开源 GPU 任务监视器,为 NVIDIA/AMD/Intel 多厂商 GPU 提供 htop 风格的交互式 TUI 界面。实时显示 GPU 利用率、显存占用、温度、功耗和进程列表,支持键盘排序、筛选和终止进程。适合深度学习训练监控、多 GPU 服务器管理和 GPU 应用调优。

一句话简介

nvtop 是一个基于 ncurses 的开源 GPU 任务监视器,支持 NVIDIA/AMD/Intel 三大厂商 GPU,提供 htop 风格的交互式 TUI。实时显示 GPU 利用率、显存、温度、功耗和进程列表,支持键盘排序、筛选和终止进程。适合深度学习训练监控、多 GPU 服务器管理。

GitHub:github.com/Syllo/nvtop

核心亮点

  • 🖥️ htop 风格交互界面:实时彩色柱状图和进程表格,方向键选择、F9 终止进程
  • 🔌 NVIDIA + AMD + Intel 三厂支持:同一界面同时显示不同厂商 GPU 状态
  • 📊 进程级 GPU 占用明细:PID、用户、利用率、显存占用量一目了然
  • ⚙️ 键盘全操作:排序、筛选、终止进程全快捷键,适合 SSH 远程管理
  • 📝 配置文件驱动:颜色、刷新率通过 nvtop.conf 控制,多机器间可复制

功能详解

多厂商 GPU 统一视图

NVIDIA 通过 NVML 获取最全指标,AMD 依赖 rocm-smi(利用率/显存/温度),Intel 依赖 intel-gpu-tools。在同一屏幕上同时查看不同厂商 GPU——nvidia-smi 做不到。

进程级资源追踪

实时显存柱状图直观展示每个进程的占用。选中进程按快捷键直接 kill,不需要切终端。深度学习实验卡住了→定位显存最高进程→一键终止,3 秒搞定。

自定义配置

配置文件 ~/.config/nvtop/nvtop.conf,可调 GPU 选择(-d)、刷新延迟(-i)、颜色主题等。命令行和配置文件叠加使用。

轻量级资源占用

C + ncurses 构建,无 Electron 套壳。监控 8 块 GPU 时 CPU 占用通常低于 1%。

安装/使用教程

Debian/Ubuntu

sudo apt update && sudo apt install nvtop

Fedora

sudo dnf install nvtop

Arch Linux

sudo pacman -S nvtop

从源码编译

git clone https://github.com/Syllo/nvtop.git
cd nvtop && mkdir build && cd build
cmake .. -DNVIDIA_SUPPORT=ON -DAMD_SUPPORT=ON -DINTEL_SUPPORT=ON
make && sudo make install

环境依赖

AMD GPU 需 rocm-smi,Intel GPU 需 intel-gpu-tools。某些系统需 sudo 权限。

适用场景

  • 深度学习训练监控:PyTorch/TensorFlow 训练时实时看 GPU 利用率,识别 CPU/IO 瓶颈
  • 多 GPU 服务器管理:管理员一目了然谁在用哪些 GPU、谁占用过多显存
  • GPU 程序调试:CUDA/ROCm 开发时观察利用率和显存曲线
  • 游戏与图形应用调优:Linux 游戏/3D 渲染时监控 GPU 温度和帧缓冲
  • Docker 容器 GPU 监控:宿主机上即可看到容器内进程的 GPU 使用情况

类似工具对比

维度nvtopnvidia-smiradeontopgpustat
价格免费开源免费(驱动自带)免费开源免费开源
支持 GPUNVIDIA/AMD/Intel仅 NVIDIA仅 AMD仅 NVIDIA
界面交互式 TUI静态文本TUI单行文本
进程管理✅ 排序/筛选/终止✅ 列表
持久化✅ 实时刷新❌ 需循环调用✅ 实时✅ watch 配合
AMD 支持N/AN/A
适用日常监控+交互脚本+精确查询AMD 专用快速概览

常见问题 FAQ

Q: nvtop 和 nvidia-smi 用哪个?

不冲突。日常盯着用 nvtop(实时/直观/可交互),写脚本用 nvidia-smi(格式稳定/可解析)。单机单卡 nvidia-smi 可能够了,多台多卡 nvtop 体验更好。

Q: AMD/Intel GPU 支持怎么样?

不如 NVIDIA 全面。NVIDIA 通过 NVML 可显示全套指标,AMD/Intel 依赖各自工具包,通常利用率/显存/温度没问题,功耗和风扇转速可能不可用。

Q: Docker 容器里能用吗?

宿主机运行 nvtop 就能看到容器进程的 GPU 使用情况。容器内运行需 --gpus all 并挂载相关库。

Q: 性能开销大吗?

很小。C + ncurses,监控 8 块 GPU 时 CPU 低于 1%。刷新间隔建议 500-1000ms,太低可能让 SSH 卡顿。

Q: 能远程监控吗?

nvtop 本身不支持远程。但 SSH 到服务器运行 nvtop 就是"远程监控"——TUI 的优势就在这。

相关推荐

推荐资源

GPT4All:把大模型装进口袋——在你自己电脑上零门槛跑开源 LLM

GPT4All:把大模型装进口袋——在你自己电脑上零门槛跑开源 LLM

GPT4All 是一款由 Nomic AI 开发的开源工具,允许用户在个人电脑上本地运行开源 LLM,支持 Windows、macOS 和 Linux。提供直观的桌面应用和 Python/C++ API,适合关注隐私、需要离线 AI 能力的开发者和普通用户。核心卖点:所有计算在本地完成,对话数据不会离开你的电脑,支持 GGUF 格式的多种开源模型,从 1.5B 到 70B+ 参数均可通过 GPU 加速或 CPU 纯跑。

AI与数据 开发工具
Open Interpreter:在本地跑 LLM 执行代码,没有文件限制、不上传数据到云端的开源 Code Interpreter 替代

Open Interpreter:在本地跑 LLM 执行代码,没有文件限制、不上传数据到云端的开源 Code Interpreter 替代

Open Interpreter 是一个开源命令行工具,让大语言模型(LLM)在你的本地电脑上安全执行 Python、JavaScript、Shell 等代码。你可以把它理解为本地版的 ChatGPT Code Interpreter——没有 100MB 文件大小限制、不需要上传数据到云端、支持通过 Ollama/LM Studio 使用本地开源模型。安装只需 pip install open-interpreter,一条命令启动交互式终端。适合需要 AI 辅助本地自动化、数据分析和编程的开发者。

AI与数据 开发工具
GSConnect:把 Android 手机无缝接入 GNOME 桌面,通知/剪贴板/文件全同步

GSConnect:把 Android 手机无缝接入 GNOME 桌面,通知/剪贴板/文件全同步

GSConnect 是一个 GNOME Shell 扩展,通过实现 KDE Connect 协议在 Linux 桌面和 Android 手机之间实现通知同步、剪贴板双向共享、无线文件传输和远程控制。核心卖点:与 GNOME Shell 深度集成,无需安装任何 Qt/KDE 依赖库,所有数据通过本地 Wi-Fi 加密传输,不经过第三方服务器。适合使用 GNOME 桌面 + Android 手机的 Linux 用户。

办公文档 系统辅助
AuthPass:兼容 KeePass kdbx 格式的跨平台开源密码管理器,Flutter 构建 + WebDAV 同步 + 内置 OTP

AuthPass:兼容 KeePass kdbx 格式的跨平台开源密码管理器,Flutter 构建 + WebDAV 同步 + 内置 OTP

AuthPass 是一款基于 Flutter 构建的现代开源密码管理器,原生兼容 KeePass kdbx 3/4 格式,覆盖 Windows/macOS/Linux/Android/iOS/Web 全平台。支持 AES/ChaCha20 加密保护密码库、WebDAV 同步到 Nextcloud/ownCloud 自托管服务器、内置 TOTP 一次性密码生成器和自动填充功能。如果你已有 KeePass 数据库想换个现代界面,或需要 iOS/Web 端访问密码库,AuthPass 是免费方案里平台覆盖最广的选择。注意尚未通过独立第三方安全审计。

数据安全 开发工具 +1
Sigil:免费开源 EPUB 编辑器,代码级控制电子书排版,正则批量替换几千处只需几秒

Sigil:免费开源 EPUB 编辑器,代码级控制电子书排版,正则批量替换几千处只需几秒

Sigil 是一款免费开源的 EPUB 电子书编辑器,提供 WYSIWYG 和代码双视图编辑。支持 EPUB 2/3 标准,内置 EpubCheck 验证,PCRE 正则跨文件批量查找替换,Python 插件系统可扩展。适合需要对 EPUB 内部结构做精细控制的作者、编辑和技术人员。Windows/macOS/Linux 全平台。

办公文档 开发工具
Postman 开源替代品横评:Bruno、Hoppscotch、Insomnia 怎么选

Postman 开源替代品横评:Bruno、Hoppscotch、Insomnia 怎么选

Postman 近年强推云同步和强制登录,越来越多开发者开始寻找替代品。本文实测三款主流开源 API 客户端——Bruno(Git 原生、离线优先,API 请求存为 .bru 纯文本文件)、Hoppscotch(浏览器即用、实时协作)和 Insomnia/Insomnium(功能最全面、有插件市场)——帮你根据团队规模和工作流选出最合适的方案。

开发工具
Flycast:免费开源世嘉 Dreamcast/Naomi/Atomiswave 模拟器,支持 Vulkan 高分辨率渲染与网络联机

Flycast:免费开源世嘉 Dreamcast/Naomi/Atomiswave 模拟器,支持 Vulkan 高分辨率渲染与网络联机

Flycast 是一款免费开源的跨平台世嘉 Dreamcast、Naomi 和 Atomiswave 模拟器,支持 Windows/macOS/Linux/Android/iOS/Web。提供 Vulkan 高分辨率渲染、即时存档、宽屏补丁、作弊码和点对点网络联机功能。Dreamcast 游戏兼容性极高,Naomi/Atomiswave 街机仍在持续优化。适合想在现代设备上重温《莎木》《索尼克大冒险》《灵魂能力》等经典的复古游戏玩家。

开发工具 游戏开发
KDiskMark:Linux 上最像 CrystalDiskMark 的磁盘测速工具,fio 的 GUI 分身

KDiskMark:Linux 上最像 CrystalDiskMark 的磁盘测速工具,fio 的 GUI 分身

KDiskMark 是一个面向 Linux 的图形化磁盘基准测试工具,底层调用 fio 引擎,提供类似 CrystalDiskMark 的交互体验。适合需要快速评估 SSD/HDD/NVMe 读写性能但不想啃 fio 命令行的用户。支持顺序读写、4K 随机读写、多队列深度/线程组合测试,结果以表格直观展示。

开发工具 系统辅助
Smuxi:从分离式 IRC 客户端到"始终在线"聊天工具的架构遗产

Smuxi:从分离式 IRC 客户端到"始终在线"聊天工具的架构遗产

Smuxi 是一个受 irssi 启发的 GNOME 多协议 IRC 客户端,核心特色是分离式客户端/服务器架构——后台 smuxi-server 保持与 IRC 网络持久连接,前端 GUI 可随时断开重连而不丢失消息。虽然项目已停止维护,但其架构理念对理解现代"始终在线"聊天工具的设计模式仍有参考价值。

开发工具 聊天工具
Tauon Music Box:当现代 UI 遇上本地音乐收藏——一款被低估的开源音乐播放器

Tauon Music Box:当现代 UI 遇上本地音乐收藏——一款被低估的开源音乐播放器

Tauon Music Box 是一款开源跨平台音乐播放器,由 Taiko2k 开发,采用 Qt 构建现代化用户界面,支持 Linux 和 Windows。提供高效的本地音乐库管理、播放列表管理、无缝播放和 Last.fm Scrobbling。适合拥有中等规模本地音乐收藏、偏好现代简洁界面设计的用户。核心卖点:在 Linux 上提供了接近 MusicBee 风格的现代 UI 体验,同时支持主题定制和插件扩展。

音乐软件 系统辅助

选择支付方式

支付 ¥0.00 购买此资源