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 --plain        # plain text without colors
nvsonar report --json         # structured output for scripts/LLMs
nvsonar report --csv          # CSV output for spreadsheets
nvsonar report --gpu 0        # single GPU
nvsonar report --gpu 0,1,2    # subset of GPUs
nvsonar benchmark             # GPU performance benchmarks
nvsonar history               # health trends over time

Documentation

Tested on

  • T4 (Turing)
  • A30 (Ampere)
  • GB10 Spark (Grace + Blackwell)

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.3.0.tar.gz (46.1 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.3.0-py3-none-any.whl (49.6 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for nvsonar-2.3.0.tar.gz
Algorithm Hash digest
SHA256 29dccf8a750f3a3ff9ec54b3f87a3f6c8362528574c459ff6fd2c29b404d5fe1
MD5 295d3a54bd87c2e2d6dd6b068bf602b4
BLAKE2b-256 98b72f94b8a55717c47b44d06d6657fd2059026c874898db0a11c76e26716f95

See more details on using hashes here.

Provenance

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

Publisher: publish.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.3.0-py3-none-any.whl.

File metadata

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

File hashes

Hashes for nvsonar-2.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4c1ca03df3a1b8e550d0b4e5280ecffc0471c28bbc354619cd50a9f244fa0fab
MD5 0efd742fd3a39b0faec50b214114c94b
BLAKE2b-256 b5846eb49d7cd40c01ce23366b3f1f2daec00ce93c6a666759fa75df7dcff4d1

See more details on using hashes here.

Provenance

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

Publisher: publish.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