个人觉得nvtop比nvidia-smi更适合深度学习显存监控

个人觉得nvtop比nvidia-smi更适合深度学习显存监控

admin
7月29日发布
温馨提示:
本文最后更新于2025年07月29日,已超过92天没有更新,若内容或图片失效,请留言反馈。

在深度学习GPU监控领域,nvtop凭借其实时动态界面和强大的进程管理功能,正在逐步取代传统的nvidia-smi工具。相比nvidia-smi的静态输出,nvtop提供了交互式可视化监控,支持自动刷新显示GPU利用率、显存占用和温度等关键指标,并能够直观查看占用GPU的进程及用户。本文详细介绍了nvtop在Linux(nvtop)和Windows/Python环境(nvitop)下的安装使用方法,并与gpustat等其他监控工具进行对比分析,帮助开发者选择最高效的GPU监控解决方案,优化深度学习工作流程。nvtop的彩色高亮显示和图表化数据展示使其成为现代深度学习训练中不可或缺的监控工具。

nvidia-smi命令

在深度学习监测服务器的显存使用情况时,目前我最常用的是定时刷新命令:

watch -n 2 -d nvidia-smi 

每隔2秒刷新一次,每次只在固定位置刷新。然后效果如下:

nvidia-smi监控显存

除了 watch -n 2 -d nvidia-smi 这种经典但略显“复古”的方法,其实有很多更优雅、更强大、更“先进”的工具来监控NVIDIA GPU的使用情况。

这些工具不仅可以提供自动刷新的功能,还能以更直观、更详细的方式展示数据。下面我将它们分为几类,并详细介绍它们的优缺点和使用场景。

命令行增强工具

如果你仍然钟爱命令行的简洁高效,但又希望获得比 watch 更强大的功能,那么下面这些工具是你的不二之选。

(1) nvtop/nvitop

nvtop 是一个非常受欢迎的 htop 风格的GPU监视工具。它以一种非常直观和动态的方式在终端中展示GPU的使用情况。

安装 (以Ubuntu为例):

sudo apt update
sudo apt install nvtop

使用的话在终端输入:

nvtop

如果你是windows用户的话,只能用nvitop了。需要在python环境里安装:

pip install nvitop

安装nvitop

然后输入:

nvitop -m full

nvitop界面

你将看到一个动态刷新的、信息丰富的界面,远比 nvidia-smi 的静态刷新要优雅。

(2) gpustat

gpustat 是一个基于Python的工具,它以一种更紧凑、更易于阅读的方式展示 nvidia-smi 的信息,并且同样支持自动刷新和监控。

优点:

  • 输出简洁美观: 默认输出比 nvidia-smi 更整洁,专注于关键信息。
  • 持续监控模式: 使用 --watch-w 参数可以实现类似 watch 的效果,但输出更友好。
  • JSON输出: 支持 –-json 参数,方便你将GPU状态集成到其他脚本或监控系统中。
  • 可定制化: 可以指定显示哪些信息,例如只显示显存和利用率。

安装方法如下:

pip install gpustat

显然这种带高亮的显示看起来更舒服,而且可以显示出完整显卡的完整名称,以及正在使用GPU的用户。

一个缺点就是不能像nvidia-smi一样显示出各个进程的信息。 如果希望每秒刷新这个信息,并只显示当前信息,则执行以下命令:

watch -n 1 -c gpustat --color

gpustat

或者直接更加简单的命令即可(推荐):

gpustat -i
© 版权声明
THE END
喜欢就支持一下吧
点赞 0 分享 赞赏
评论 抢沙发
上传图片
OωO
取消