Skip to main content

Active GPU diagnostic tool that identifies performance bottlenecks

Project description

NVSonar

PyPI version Python License Downloads

Active GPU diagnostic tool that identifies performance bottlenecks, detects anomalous patterns over time, and gives you actionable recommendations.

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.

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

Demo

nvsonar demo

Requirements

  • Python 3.10+
  • NVIDIA GPU with driver installed
  • Linux

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.0.tar.gz (37.7 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.0-py3-none-any.whl (43.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: nvsonar-2.1.0.tar.gz
  • Upload date:
  • Size: 37.7 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.0.tar.gz
Algorithm Hash digest
SHA256 b1bcb07120e80e2645015308880a0633e4c12b5215c4f202b3130718838f62d5
MD5 c7c7833755a03042a3db2cfd923ab88e
BLAKE2b-256 a0f238586d5c630aaa0f1f424d498bf9c9f7352e6b55d22544468f4ffc6a202d

See more details on using hashes here.

Provenance

The following attestation bundles were made for nvsonar-2.1.0.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.0-py3-none-any.whl.

File metadata

  • Download URL: nvsonar-2.1.0-py3-none-any.whl
  • Upload date:
  • Size: 43.6 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8f077ac56564345844e3f1aae8c78c72102d3faecde915b82c2dc6f8a0521654
MD5 eb9a9de08e283513d543434e5ff1cca8
BLAKE2b-256 28fe30647cd9146158a79ad3785553525718f5e5bf0e8a016a5913663f783c29

See more details on using hashes here.

Provenance

The following attestation bundles were made for nvsonar-2.1.0-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