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 的优势就在这。

相关推荐

推荐资源

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与数据 开发工具
Flycast:免费开源世嘉 Dreamcast/Naomi/Atomiswave 模拟器,支持 Vulkan 高分辨率渲染与网络联机

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

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

开发工具 游戏开发
GNOME Terminal:当默认终端不再是唯一选择,它还剩下什么

GNOME Terminal:当默认终端不再是唯一选择,它还剩下什么

GNOME Terminal 是 GNOME 桌面环境的默认终端模拟器,基于 VTE 库构建,对 GNOME 用户来说开箱即用。适合不需要花哨功能的日常命令行用户——系统管理、SSH、Git、编译,够用。支持多 Profile 配置、透明背景、自定义快捷键。如果你的需求是 GPU 渲染的丝滑滚动和极致定制化,这篇评测也会告诉你在第几个分岔路口换车。

开发工具 系统辅助
Oh My Zsh:一条命令拥有增强版终端,300+ 插件让 Git/Docker/kubectl 自动补全开箱即用

Oh My Zsh:一条命令拥有增强版终端,300+ 插件让 Git/Docker/kubectl 自动补全开箱即用

Oh My Zsh 是一个社区驱动的 Zsh 配置管理框架,一条命令安装即用。内置 300+ 插件(git/docker/kubectl 等),150+ 主题,支持自动补全、语法高亮和 Git 状态集成。适合从 Bash 迁移到 Zsh 的所有开发者,大幅降低 Zsh 学习曲线。开源免费,GitHub 170k+ Star。

开发工具 系统辅助
GSConnect:把 Android 手机无缝接入 GNOME 桌面,通知/剪贴板/文件全同步

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

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

办公文档 系统辅助
GPT4All:把大模型装进口袋——在你自己电脑上零门槛跑开源 LLM

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

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

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

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

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

办公文档 开发工具
Pick Color Picker:几十KB的轻量级 Linux 屏幕取色工具,支持 RGB/HEX/HSL 多格式一键输出

Pick Color Picker:几十KB的轻量级 Linux 屏幕取色工具,支持 RGB/HEX/HSL 多格式一键输出

Pick Color Picker 是 Stuart Langridge 开发的一款 Linux 原生屏幕颜色拾取工具,仅几十 KB 大小。鼠标悬停像素即显示放大视图和 HEX/RGB/HSL 颜色值,一键复制到剪贴板。适合前端开发、Linux 桌面主题定制和 UI 设计时快速取色。注意项目自 2017 年停更,Wayland 环境可能不兼容——建议 Xorg 用户使用。

开发工具 桌面美化
Godot Engine:MIT 协议下的全能游戏引擎——从 2D 独立游戏到 3D 商业项目

Godot Engine:MIT 协议下的全能游戏引擎——从 2D 独立游戏到 3D 商业项目

Godot Engine 是一款完全免费开源的跨平台游戏引擎,采用 MIT 协议,无授权费、无版税、无导出限制。内置 Python 风格的 GDScript、C#、和 GDExtension (C++) 三种编程方式,核心是独特的“节点系统”架构。它的 2D 能力在同类中一流,Godot 4 版本引入 Vulkan 渲染后 3D 能力追赶中。适合独立游戏开发者、小型团队、Game Jam 参赛者,以及对商业引擎许可费用敏感的开发者。核心卖点:Dome Keeper、Halls of Torment 等爆款独立游戏均用 Godot 开发,已经是经过商业验证的工具。

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

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

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

开发工具 聊天工具

选择支付方式

支付 ¥0.00 购买此资源