/nvsmi

A (user-)friendly wrapper to nvdia-smi

Primary LanguagePythonMIT LicenseMIT

nvsmi

A (user-)friendly wrapper to nvidia-smi.

It can be used to filter the GPUs based on resource usage (e.g. to choose the least utilized GPU on a multi-GPU system).

Usage

CLI

nvsmi --help
nvsmi ls --help
nvsmi ps --help

As a library

import nvsmi

nvsmi.get_gpus()
nvsmi.get_available_gpus()
nvsmi.get_gpu_processes()

Prerequisites

  • An nvidia GPU
  • nvidia-smi
  • Python 2.7 or 3.6+

Installation

pipx

The recommended installation method is pipx. More specifically, you can install nvsmi for your user with:

pipx install nvsmi

The above command will create a virtual environment in ~/.local/pipx/venvs/nvsmi and add the nvsmi executable in ~/.local/bin.

pip

Alternatively you can use good old pip but this is more fragile than pipx:

pip install --user nvsmi