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

  • Diagnostics: bottleneck classification (compute, memory, power, thermal, data-starved), temporal pattern detection (clock oscillation, temperature trends, utilization dips, memory leaks)
  • Multi-GPU: outlier detection via Z-scores, flags the GPU slowing down distributed training
  • Health scoring: 0-100 per GPU with A-F grades, actionable recommendations with specific commands
  • Benchmarks: memory bandwidth, compute throughput, PCIe speed vs theoretical specs
  • History: tracks GPU health over time, detects degradation trends
  • Python API: session monitoring during training (nvsonar.start(), nvsonar.stop())
  • Output: terminal report, JSON, CSV

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

Documentation

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.2.0.tar.gz (40.4 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.2.0-py3-none-any.whl (47.6 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for nvsonar-2.2.0.tar.gz
Algorithm Hash digest
SHA256 028dfe395823db764ac2a1220d4bd1065b1353c1b87867c2bba67a2461412380
MD5 c124b3685bb0fea391ea20c3be53e164
BLAKE2b-256 eb7bd0543215f54da659325c8ef8175f5de1a729230dd354c5b94f14e36f7363

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: nvsonar-2.2.0-py3-none-any.whl
  • Upload date:
  • Size: 47.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.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9373ab5b1ab3ba5195923fc055adc70a1b0f3f0021953a137e9058a72f9521b6
MD5 cfc51a361ddbe6d0a19ee6d29d14b0b1
BLAKE2b-256 3b19ef0d07bc98022e861400d19c2a79913b5ffe11895c56b2e6055a7258d573

See more details on using hashes here.

Provenance

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