Nvtop Versions Save

GPU & Accelerator process monitoring for AMD, Apple, Huawei, Intel, NVIDIA and Qualcomm

3.1.0

2 months ago

Added support for the following hardware accelerators/GPUs:

  • More Adreno GPUs thanks to the panfrost linux driver
  • Mac GPUs (tested on M1 and M2 by the community)
  • Huawei Ascend accelerators

Bugfixes and improvements:

  • Don't call handlers for GPUs that are marked as not to be monitored
  • Fix crash when the configuration file path could not be discovered through user environment variables (XDG_HOME etc)

3.0.2

11 months ago

Bugfixes:

  • AMGDPU: GPUs other than id 0 should now be correctly monitored. Thanks to @CabbageSong
  • Fixed a bug in GPU selection logic through the F2 menu where the wrong GPUs would still be displayed. Thanks to @cfwen for pointing me in the right direction

Improvemenrs:

  • Support for ADRENO GPUs through the msm driver. Thanks @Sonicadvance1 and @robclark
  • Better AMDGPU device name query for newer GPUs thanks to @amdsc21 and @paklui.
  • "hjkl" directional keys. Thanks @Euro20179

3.0.1

1 year ago

Bugfix:

  • Other process than nvtop would end up hidden instead of nvtop itself.
  • AMDGPU processes that use graphical and compute resources within the same DRM context would erroneously only report compute usage.

3.0.0

1 year ago

New for this version:

  • Intel GPU support
    • Partial for this release due to pending kernel patches. See the Intel section of the README for more information
      • Works (any): dectect GPU with name and clock speed
      • Works on Linux kernel >= 5.19: GPU usage, encode/decode usage, processes running on GPU.
      • Not supported yet: Memory (GPU and processes), Memory clock, fan, power, RX/TX data exchange rate.
    • Uses libsystemd (requires sd-device) or libudev (on systems without systemd or sd-device) to detect the devices and extract some GPU metrics
  • Support for detecting integrated graphic cards (Intel and AMD)
  • A new "GPU select" window in the setup window (F2) to enable/disable monitoring of select GPUs
    • This setting can be saved to be persistent after a restart
    • This replaces the "-s" and "-i" command line options
  • An new option to hide nvtop's own process from the process list (enabled by default)
  • Support messages on startup to inform about limitations on old kernels
  • Provide an Appstream metainfo file for nvtop

Fix:

  • Workaround to detect AMD GPUs which are always reporting 100% usage through the DRM driver and show the sum of the processes usage instead

2.0.4

1 year ago

New this update:

  • snap support thanks to @Nightmayr
  • Standalone application through an AppImage
    • No compilation needed, download and run (see README)!
    • Built inside an Ubuntu 18.04 docker (should run almost everywhere but please report any issue).
  • Logo and .desktop file (required for an AppImage). The logo is not the best since I am not very talented ...
  • AMDGPU compute task reporting in the process list.

Fix and improvements this update:

  • Fix warnings from misuse of ncurses print function. Thanks @felixonmars
  • Go through /proc only once per update, independently of the number of GPUs.
    • Less resources used on systems with multiple AMD GPUs.
  • Fix inconsistencies coming from AMDGPU fdinfo interface (e.g., greater than 100% usage in some occasions)

Help nvtop:

I am working on adding Intel support for the next release. If someone has (or plans to buy) a dedicated Intel GPU, please drop a comment on the #106 thread if you are willing to help by sharing some udev and fdinfo dump of your system.

2.0.3

1 year ago

New this update:

  • Second are shown on the graphs time axis.
  • AMDGPU support for the Linux kernels >=5.19
    • Support for the updated fdinfo interface (seems to be a name harmonization between multiple drivers, i.e., AMD and Intel)
    • More precise GPU usage metrics
      • Per-GPU gfx, encode and decode time usage in nanoseconds allows for a precise percentage usage computation independently of the driver update rate (a GPU time usage column for the process list will follow)

Fix:

  • Segfault while retrieving AMDGPU device handles and no device node could be opened.
  • Compilation warnings

Thanks to all contributors!

2.0.2

1 year ago

New this update:

  • AMDGPU encode and decode metrics full support
  • Getting GPU metrics from the process information for older AMDGPU (when the DRM interface does not support it)

Fixes and improvements:

  • Fix interface artifacts when the terminal is maximized
  • Plot support for up to 64 accelerators
  • Fix crash for some terminal sizes when the number of GPU was greater than 1
  • Multiple interface positioning algorithm fix
  • Memory allocation overflow checks
  • Switched to linear array allocation strategy to reduce the memory footprint
  • Unit testing using gtest (provides a test target when -DENABLE_TESTING is set or during Debug build)

2.0.1

2 years ago

Minor bugfix release following AMDGPU support.

  • Fixed compilation error on systems with older libdrm versions.
  • Extract PCIe generation and width from a more reliable source for AMDGPU.

2.0.0

2 years ago

New in this release:

  • AMDGPU support

Bugfix:

  • Removed a printf to stderr that could break the ncurses layout.

1.2.2

2 years ago

Minor release with some bugfix before updating the Debian package.