MCPcopy Index your code
hub / github.com/ROCm/device-metrics-exporter

github.com/ROCm/device-metrics-exporter @v1.5.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.5.0 ↗ · + Follow
3,578 symbols 7,330 edges 130 files 907 documented · 25% updated 6d agov1.5.0 · 2026-05-08★ 612 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

AMD Device Metrics Exporter

AMD Device Metrics Exporter enables real-time collection of telemetry data in Prometheus format from AMD GPUs in HPC and AI environments. It provides comprehensive metrics including temperature, utilization, memory usage, power consumption, and more.

Features

  • Prometheus-compatible metrics endpoint
  • Rich GPU telemetry data including:
  • Temperature monitoring
  • Utilization metrics
  • Memory usage statistics
  • Power consumption data
  • PCIe bandwidth metrics
  • Performance metrics
  • Kubernetes integration via Helm chart
  • Slurm integration support
  • Configurable service ports
  • Container-based deployment

Documentation

For detailed documentation including installation guides, configuration options, and metric descriptions, see the documentation.

License

This project is licensed under the Apache 2.0 License - see the LICENSE file for details.

Extension points exported contracts — how you extend this code

TestRunner (Interface)
TestRunner is interface which can be implemented by different test frameworks like agfhc [2 implementers]
pkg/testrunner/interface/interface.go
SchedulerClient (Interface)
(no doc) [4 implementers]
pkg/exporter/scheduler/scheduler.go
NICInterface (Interface)
(no doc) [3 implementers]
pkg/amdnic/nicagent/nic_metrics_interface.go
HealthInterface (Interface)
HealthInterface defines the interface for health metrics of AMD GPUs.
pkg/amdgpu/metricsserver/health_interface.go
EnvironmentProvider (Interface)
(no doc) [1 implementers]
tools/amd-gpu-health/cli/cmd/querymetric.go
Exporter (Interface)
(no doc) [1 implementers]
test/e2e/interface.go
HelmClientOpt (FuncType)
(no doc)
test/k8s-e2e/clients/helm.go
TestHandlerInterface (Interface)
TestHandlerInterface is interface for TestHandler [1 implementers]
pkg/testrunner/interface/interface.go

Core symbols most depended-on inside this repo

Printf
called by 674
pkg/exporter/logger/logger_enhanced.go
Errorf
called by 242
pkg/exporter/logger/logger_enhanced.go
String
called by 131
test/utils/utils.go
logWithValidateAndExport
called by 107
pkg/amdgpu/gpuagent/gpuagent_utils.go
StringToUint64
called by 94
pkg/exporter/utils/utils.go
Fatalf
called by 77
pkg/exporter/logger/logger_enhanced.go
String
called by 68
pkg/testrunner/interface/interface.go
Error
called by 68
pkg/exporter/utils/error.go

Shape

Method 2,619
Function 472
Struct 316
Class 66
TypeAlias 55
Interface 43
FuncType 7

Languages

Go98%
C++2%

Modules by API surface

pkg/amdgpu/gen/amdgpu/gpu.pb.go656 symbols
pkg/amdgpu/gen/amdgpu/ual.pb.go351 symbols
pkg/amdnic/gen/nicmetrics/nic.pb.go262 symbols
pkg/exporter/gen/exportermetrics/exporterconfig.pb.go167 symbols
pkg/amdgpu/gen/amdgpu/events.pb.go106 symbols
pkg/testrunner/gen/testrunner/config.pb.go97 symbols
pkg/amdnic/gen/nicmetrics/ethtool.pb.go89 symbols
pkg/amdgpu/mock_gen/mock_gpu.go68 symbols
pkg/amdgpu/gen/amdgpu/gpu_grpc.pb.go67 symbols
pkg/exporter/gen/metricssvc/metricssvc.pb.go61 symbols
pkg/amdgpu/gen/gpumetricssvc/gpumetricssvc.pb.go61 symbols
pkg/amdnic/gen/nicmetrics/rdmastats.pb.go48 symbols

For agents

$ claude mcp add device-metrics-exporter \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page