Installation
NVTOP can be installed through various methods, including distribution package managers, standalone binaries, building from source, or using Docker. Choose the method that best suits your environment.
From Package Managers
This is the recommended method for most users.
Ubuntu / Debian
For Ubuntu 20.04 (Focal) / Debian 10 (Buster) and newer:
sudo apt install nvtop
For an up-to-date version on Ubuntu, you can use the PPA:
sudo add-apt-repository ppa:quentiumyt/nvtop
sudo apt update
sudo apt install nvtop
Fedora / RHEL / CentOS
For Fedora 36 and newer:
sudo dnf install nvtop
For RHEL 8/9, CentOS Stream, Rocky Linux, and AlmaLinux, nvtop is available in the EPEL repository:
# Enable EPEL if not already enabled
sudo dnf install epel-release
# Install nvtop
sudo dnf install nvtop
Arch Linux
sudo pacman -S nvtop
Gentoo
sudo emerge -av nvtop
OpenSUSE
sudo zypper install nvtop
Packaged Binaries
AppImage
An AppImage is a standalone executable that runs on most Linux distributions.
- Download the latest
nvtop-x86_64.AppImagefrom the GitHub Releases page. - Make it executable and run it:
chmod u+x nvtop-x86_64.AppImage
./nvtop-x86_64.AppImage
Snap
snap install nvtop
# Grant permissions for full functionality
snap connect nvtop:process-control # To kill processes from within nvtop
snap connect nvtop:hardware-observe # To inspect GPU fan, PCIe, power, etc.
snap connect nvtop:system-observe # For AMDGPU process list support
snap connect nvtop:kubernetes-support # Workaround for per-process GPU usage
Conda-forge
If you use Conda or Mamba for environment management:
conda install --channel conda-forge nvtop
Building from Source
Building from source gives you the most control and is necessary for development or unsupported distributions.
1. Install Dependencies
You will need cmake, git, ncurses (including wide-character support), and a C/C++ compiler. Vendor-specific libraries are also required.
- General:
cmake,libncurses5-dev,libncursesw5-dev,git - AMD/Intel/Other DRM-based:
libdrm-dev,libsystemd-devorlibudev-dev - NVIDIA: The proprietary NVIDIA driver, which includes the NVML library.
- MetaX: The MetaX driver, which includes the MXSML library.
Example on Debian/Ubuntu:
sudo apt install cmake libncurses5-dev libncursesw5-dev git libdrm-dev libsystemd-dev
Example on Fedora/RHEL:
sudo dnf install cmake ncurses-devel git gcc-c++ libdrm-devel systemd-devel
2. Clone and Build
git clone https://github.com/Syllo/nvtop.git
cd nvtop
mkdir build && cd build
# Configure the build (see options below)
cmake ..
# Compile
make
# Install system-wide
sudo make install
Build Options
You can customize which hardware backends to include by passing options to cmake. By default, nvtop enables support for hardware it detects as relevant to your system.
To explicitly enable support for a vendor, use -D<VENDOR>_SUPPORT=ON:
# Example: Build with support for NVIDIA, AMD, and Intel
cmake .. -DNVIDIA_SUPPORT=ON -DAMDGPU_SUPPORT=ON -DINTEL_SUPPORT=ON
Available options include:
NVIDIA_SUPPORTAMDGPU_SUPPORTINTEL_SUPPORTMSM_SUPPORT(Qualcomm Adreno)APPLE_SUPPORTPANFROST_SUPPORT(Mali)PANTHOR_SUPPORT(Mali)ASCEND_SUPPORT(Huawei)V3D_SUPPORT(Raspberry Pi)TPU_SUPPORT(Google TPU)ROCKCHIP_SUPPORTMETAX_SUPPORT
Docker
For a containerized environment, you can use Docker. See the Deployment with Docker guide for detailed instructions.