{"categories":[{"label":"Python Modules","url":"https://skillfed.io/packages/category/software-development-libraries-python-modules/16"},{"label":"Systems Administration","url":"https://skillfed.io/packages/category/system-systems-administration"},{"label":"Hardware","url":"https://skillfed.io/packages/category/system-hardware"}],"enrichment":{"capability":"Provides Python 3 bindings to query NVIDIA GPU state and manage GPU visibility for multi-GPU systems via the NVIDIA Management Library.","skillfed_tags":["gpu-management","nvidia-hardware","abandoned"],"use_cases":["Automatically allocate N free GPUs to a job on a shared multi-GPU server without manual CUDA_VISIBLE_DEVICES configuration.","Monitor GPU memory usage and process counts programmatically to implement custom GPU scheduling or load-balancing logic.","Query driver version, GPU model names, and memory capacity at runtime to validate hardware requirements before launching compute jobs.","Implement a health-check or monitoring script that detects hung GPU processes or memory leaks across a cluster of machines.","Build a web dashboard or CLI tool that displays formatted GPU status with custom metrics or filtering."],"what_it_does":"py3nvml is a Python 3 port of NVIDIA's official python bindings to the NVIDIA Management Library (NVML), allowing you to query GPU state, driver info, memory usage, and running processes programmatically. It wraps the C NVML library and raises Python exceptions instead of returning error codes, making it more Pythonic than the original C interface.\n\nBeyond basic NVML queries, the package includes utility functions for shared GPU server scenarios: grab_gpus() automatically sets CUDA_VISIBLE_DEVICES to allocate a specified number of free GPUs based on memory thresholds, get_free_gpus() detects which GPUs have no running processes, and a py3smi command-line tool provides formatted GPU status output. These utilities address the practical problem of preventing greedy frameworks from monopolizing all available GPUs.","worth_installing":"No\u2014the package is abandoned (last release 2021-11-22, last commit 2022-04-14) and will not track NVIDIA driver or CUDA API changes. For new projects, use actively maintained alternatives. If you have legacy code already using py3nvml, it may still work on older systems, but do not adopt it for new development."},"id":"py3nvml","links":{"html":"https://skillfed.io/packages/py3nvml","md":"https://skillfed.io/packages/py3nvml.md","pypi":"https://pypi.org/project/py3nvml/"},"maintenance":{"status":"abandoned"},"meta":{"latest_release":"2021-11-22","license_spdx":null,"license_treatment":"permissive","name":"py3nvml","python_support":"unspecified","summary":"Python 3 Bindings for the NVIDIA Management Library"},"popularity":{"monthly_downloads":192517,"position":9861,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.2.7"}
