Skip to content

feat(ascend): add DCMI telemetry backend - #503

Open
KaranocaVe wants to merge 3 commits into
Syllo:masterfrom
KaranocaVe:feat/ascend-dcmi-telemetry
Open

feat(ascend): add DCMI telemetry backend#503
KaranocaVe wants to merge 3 commits into
Syllo:masterfrom
KaranocaVe:feat/ascend-dcmi-telemetry

Conversation

@KaranocaVe

@KaranocaVe KaranocaVe commented Aug 23, 2026

Copy link
Copy Markdown

Summary

  • extend the vendored DCMI interface surface and compatibility handling
  • collect and present additional Ascend device and process telemetry through the logical-device API with legacy fallback
  • discover libdcmi.so in standard Ascend locations, support ASCEND_ROOT, and document the optional build configuration

Feature coverage

This is intended to make Ascend a near feature-complete NVTOP backend, rather than a basic detection path. Where the installed CANN driver exposes a metric, it covers the core real-time monitoring surface: device discovery and identity, device and process memory, NPU/AI Core/AI CPU utilization, HBM telemetry, frequencies, temperature, power, PCIe information, and device health/status.

The backend prefers the dcmiv2 logical-device API and falls back to legacy card/device DCMI APIs and symbols, so it can provide that coverage across CANN/Ascend generations. Capabilities absent from a particular driver remain unavailable without preventing monitoring of the rest. This gives Ascend feature coverage close to NVTOP's established vendor backends, subject to the telemetry exposed by the installed driver and hardware.

Validation

  • git diff --check upstream/master...HEAD
  • on Ascend 910B3/CANN: cmake -S /workspace/nvtop -B /tmp/nvtop-ascend-build -DASCEND_SUPPORT=ON -DCMAKE_BUILD_TYPE=Release
  • cmake --build /tmp/nvtop-ascend-build --parallel 2

- Search standard Ascend installation locations for libdcmi.so
- Allow ASCEND_ROOT to override the installation root
- Document the optional Ascend build configuration
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant