Skip to main content

Active GPU diagnostic tool that identifies performance bottlenecks

Project description

NVSonar

PyPI version Python License Downloads

GPU monitoring tools show utilization percentages, but this can be misleading. A GPU reporting 100% utilization may actually be computing useful work, or wastefully stalled waiting on memory transfers, thermal throttling, or power limits. NVSonar analyzes real-time patterns from NVML metrics to identify what's actually limiting your GPU performance.

nvsonar demo

Features

  • Bottleneck classification (compute-bound, memory-bandwidth-bound, memory-capacity-bound, power-limited, thermal-throttled, data-starved)
  • Temporal pattern detection (clock oscillation, temperature trends, utilization dips, memory leaks)
  • Multi-GPU outlier detection via Z-scores
  • Health scoring with A-F grades (0-100 per GPU)
  • Throttle bitmask decoder with severity levels
  • PCIe link degradation and ECC error monitoring
  • Actionable recommendations with specific commands
  • GPU performance benchmarks (memory bandwidth, compute throughput, PCIe speed)
  • Historical tracking with trend analysis over time
  • Session monitoring Python API for workload profiling
  • JSON and CSV output for automation and scripting

Requirements

  • Python 3.10+
  • NVIDIA GPU with driver installed
  • Linux
  • CUDA toolkit (only for nvsonar benchmark, not required for other commands)

Installation and Usage

pip install nvsonar
nvsonar                  # interactive TUI
nvsonar report           # one-shot diagnostic
nvsonar report --json    # structured output for scripts/LLMs
nvsonar report --csv     # CSV output for spreadsheets
nvsonar report --gpu 0   # specific GPU
nvsonar benchmark        # GPU performance benchmarks
nvsonar history          # health trends over time

License

Apache License 2.0

Author

Bekmukhamed Tursunbayev

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

nvsonar-2.1.2.tar.gz (39.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nvsonar-2.1.2-py3-none-any.whl (47.1 kB view details)

Uploaded Python 3

File details

Details for the file nvsonar-2.1.2.tar.gz.

File metadata

  • Download URL: nvsonar-2.1.2.tar.gz
  • Upload date:
  • Size: 39.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for nvsonar-2.1.2.tar.gz
Algorithm Hash digest
SHA256 ecd9dd7363617e221786d2d9bb32bd666398036916c47e9b6b09975af13821d5
MD5 0aa2fbf4a41b484d7b46d2b525f7a047
BLAKE2b-256 44da4675d0905f51a4e5fe9768fa5437e2014fdf4d2b7b9c31a7c596abacf99a

See more details on using hashes here.

Provenance

The following attestation bundles were made for nvsonar-2.1.2.tar.gz:

Publisher: ci.yml on btursunbayev/nvsonar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nvsonar-2.1.2-py3-none-any.whl.

File metadata

  • Download URL: nvsonar-2.1.2-py3-none-any.whl
  • Upload date:
  • Size: 47.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for nvsonar-2.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 29a01810ce369aabae586a773785d5714fe3b406bd5de5affbb4dd9d1e1a2db8
MD5 70e353a90f2aa6245050124389fe4fe3
BLAKE2b-256 17f39c6a3385af5192e029debf798468fc9ef893fb11d6263d80a99a21350606

See more details on using hashes here.

Provenance

The following attestation bundles were made for nvsonar-2.1.2-py3-none-any.whl:

Publisher: ci.yml on btursunbayev/nvsonar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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