Skip to main content

gpu_tracker

Description

The gpu_tracker package provides a Tracker class and a commandline-interface that tracks (profiles) the usage of compute time, CPU utilization, maximum RAM, GPU utilization, and maximum GPU RAM. The compute time is a measurement of the real time taken by the task as opposed to the CPU-utilization time. The GPU tracking is for both Nvidia and AMD GPUs and respectively uses the nvidia-smi and amd-smi command-line tools to pull GPU usage information. Also, if neither the appropriate Nvidia nor AMD driver is installed, then the GPU-related metrics are not tracked and are reported as 0. Computational resources are tracked throughout the duration of a context manager or the duration of explicit calls to the start() and stop() methods of the Tracker class. The gpu-tracker command-line interface alternatively tracks the computational-resource-usage of an arbitrary shell command.

NOTE: The tracking occurs in a separate process. To maximize the accuracy of the reported resource usage, you may want to have a core available solely for the tracking process e.g. if your job uses 3 workers, you may want to allocate 4 cores.

NOTE: Since the tracking process is created using the Python multiprocessing library, if done so using the “spawn” start method (default on MacOS and Windows) or the “forkserver” method, you may get a runtime error after starting the tracking. To prevent this, you’ll need to start the tracker after checking if __name__ == '__main__'. See “Safe importing of main module” under The spawn and forkserver start methods for more information.

Documentation

The complete documentation for the gpu_tracker package, including tutorials, can be found here.

Installation

Requires python 3.10 and above.

Install on Linux, Mac OS X

python3 -m pip install gpu-tracker

Install on Windows

py -3 -m pip install gpu-tracker

PyPi

See our PyPi page here.

Questions, Feature Requests, and Bug Reports

Please submit any questions or feature requests you may have and report any potential bugs/errors you observe on our GitHub issues page.

GitHub Repository

Code is available on GitHub: https://github.com/MoseleyBioinformaticsLab/gpu_tracker.

Metadata

Release files for gpu-tracker 5.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for gpu-tracker 5.0.1
File Size Uploaded Provenance Actions
gpu_tracker-5.0.1.tar.gz 118.8 kB Without provenance Details for gpu_tracker-5.0.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for gpu-tracker 5.0.1
File Interpreter ABI Platform Actions
gpu_tracker-5.0.1-py3-none-any.whl Python 3 none any Details for gpu_tracker-5.0.1-py3-none-any.whl

Total release size: 147.7 kB

Release files / gpu_tracker-5.0.1.tar.gz

Download URL gpu_tracker-5.0.1.tar.gz
Size 118.8 kB
Tags Source
SHA-256 checksum
How to use checksums
b15ebed2e439f44bd19f2ea1c40f11fb4253d3fc2edec68a0f3049e203e17fa4
BLAKE2b-256 checksum
How to use checksums
35abe038e6eeb3b2efcb099b4bd51e3cdde3e529bf4001ac8aa79f5ead1d2ae4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.9

Release files / gpu_tracker-5.0.1-py3-none-any.whl

Download URL gpu_tracker-5.0.1-py3-none-any.whl
Size 28.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fbb56110433687640eb3289a1f32fa2b3ad78a77d83f2eca0ab3e5e1b026abac
BLAKE2b-256 checksum
How to use checksums
919ee897f040b68480c58b458b432d071c378bcc0b8afb4de37c34f352d792ec
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.9

Security for gpu-tracker 5.0.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page