Skip to main content

Python utilities for the NVIDIA Management Library

Project description

[!WARNING]

The pynvml module is NOT developed or maintained in this project!

This project provides unofficial NVML Python utilities (i.e. the pynvml_utils module). The pynvml_utils module is intended for demonstration purposes only. There is no guarantee for long-term maintenence or support.

The pynvml_utils module depends on the official NVML bindings published by NVIDIA under a different nvidia-ml-py project (see: https://pypi.org/project/nvidia-ml-py/).

Python utilities for the NVIDIA Management Library

This project provides unofficial Python utilities for the NVIDIA Management Library (NVML).

For information about the NVML library, see the NVML developer page http://developer.nvidia.com/nvidia-management-library-nvml

Requires

nvidia-ml-py.

Installation

pip install .

Usage

Bindings for the high-level nvidia-smi API are available in pynvml_utils.nvidia_smi:

[!WARNING] The nvidia_smi module is intended for demonstration purposes only. There is no guarantee for long-term maintenence or support.

from pynvml_utils import nvidia_smi
nvsmi = nvidia_smi.getInstance()
nvsmi.DeviceQuery('memory.free, memory.total')
from pynvml_utils import nvidia_smi
nvsmi = nvidia_smi.getInstance()
print(nvsmi.DeviceQuery('--help-query-gpu'), end='\n')

Release Notes

  • Version 12.0.0
    • Remove pynvml module and depend on nvidia-ml-py instead
    • Pin to nvidia-ml-py>=12.0.0,<13.0.0a0

Old Releases

  • Version 2.285.0
    • Added new functions for NVML 2.285. See NVML documentation for more information.
    • Ported to support Python 3.0 and Python 2.0 syntax.
    • Added nvidia_smi.py tool as a sample app.
  • Version 3.295.0
    • Added new functions for NVML 3.295. See NVML documentation for more information.
    • Updated nvidia_smi.py tool
      • Includes additional error handling
  • Version 4.304.0
    • Added new functions for NVML 4.304. See NVML documentation for more information.
    • Updated nvidia_smi.py tool
  • Version 4.304.3
    • Fixing nvmlUnitGetDeviceCount bug
  • Version 5.319.0
    • Added new functions for NVML 5.319. See NVML documentation for more information.
  • Version 6.340.0
    • Added new functions for NVML 6.340. See NVML documentation for more information.
  • Version 7.346.0
    • Added new functions for NVML 7.346. See NVML documentation for more information.
  • Version 7.352.0
    • Added new functions for NVML 7.352. See NVML documentation for more information.
  • Version 8.0.0
    • Refactor code to a nvidia_smi singleton class
    • Added DeviceQuery that returns a dictionary of (name, value).
    • Added filter parameters on DeviceQuery to match query api in nvidia-smi
    • Added filter parameters on XmlDeviceQuery to match query api in nvidia-smi
    • Added integer enumeration for filter strings to reduce overhead for performance monitoring.
    • Added loop(filter) method with async and callback support
  • Version 8.0.1
    • Restructuring directories into two packages (pynvml and nvidia_smi)
    • Adding initial tests for both packages
    • Some name-convention cleanup in pynvml
  • Version 8.0.2
    • Added NVLink function wrappers for pynvml module
  • Version 8.0.3
    • Added versioneer
    • Fixed nvmlDeviceGetNvLinkUtilizationCounter bug
  • Version 8.0.4
    • Added nvmlDeviceGetTotalEnergyConsumption
    • Added notes about NVML permissions
    • Fixed version-check testing
  • Version 11.0.0
    • Updated nvml.py to CUDA 11
    • Updated smi.py DeviceQuery to R460
    • Aligned nvml.py with latest nvidia-ml-py deployment
  • Version 11.4.0
    • Updated nvml.py to CUDA 11.4
    • Updated smi.py NVML_BRAND_NAMES
    • Aligned nvml.py with latest nvidia-ml-py deployment (11.495.46)
  • Version 11.4.1
    • Fix comma bugs in nvml.py
  • Version 11.5.0
    • Updated nvml.py to support CUDA 11.5 and CUDA 12
    • Aligned with latest nvidia-ml-py deployment (11.525.84)
  • Version 11.5.2
    • Relocated smi bindings to new pynvml_utils module
    • Updated README to encourage migration to nvidia-ml-py
  • Version 11.5.3
    • Update versioneer

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pynvml-12.0.0.tar.gz (33.6 kB view details)

Uploaded Source

Built Distribution

pynvml-12.0.0-py3-none-any.whl (26.6 kB view details)

Uploaded Python 3

File details

Details for the file pynvml-12.0.0.tar.gz.

File metadata

  • Download URL: pynvml-12.0.0.tar.gz
  • Upload date:
  • Size: 33.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.7

File hashes

Hashes for pynvml-12.0.0.tar.gz
Algorithm Hash digest
SHA256 299ce2451a6a17e6822d6faee750103e25b415f06f59abb8db65d30f794166f5
MD5 2bca3198a8036106ad726ab6625f9a9c
BLAKE2b-256 266f6b5880ed0239e85b9a39aed103b65b2ef81425beef9f45e5c035bf008330

See more details on using hashes here.

File details

Details for the file pynvml-12.0.0-py3-none-any.whl.

File metadata

  • Download URL: pynvml-12.0.0-py3-none-any.whl
  • Upload date:
  • Size: 26.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.7

File hashes

Hashes for pynvml-12.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fdff84b62a27dbe98e08e1a647eb77342bef1aebe0878bcd15e99a83fcbecb9e
MD5 50265abb8037bdee4c66df893c9fb703
BLAKE2b-256 eddff7cf07a65a96dd11d71f346f9c2863accdd4784da83af7181b067d556cbc

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page