> ## Documentation Index
> Fetch the complete documentation index at: https://docs.openlit.io/llms.txt
> Use this file to discover all available pages before exploring further.

# AMD GPUs

> Monitor AMD GPU metrics via sysfs/hwmon using the OpenTelemetry GPU Collector

The collector monitors AMD GPUs directly from the Linux kernel's sysfs and hwmon interfaces. No ROCm, no user-space libraries, and no additional drivers are needed beyond the standard AMDGPU kernel module.

## Requirements

* Linux with the `amdgpu` kernel driver
* Kernel 5.x+ (sysfs/hwmon paths are stable from 5.x onwards)

## Collected metrics

| Metric                                 | Description                                 |
| -------------------------------------- | ------------------------------------------- |
| `hw.gpu.utilization`                   | Compute utilization (0.0–1.0)               |
| `hw.gpu.memory.utilization`            | Fraction of GPU memory used (usage / limit) |
| `hw.gpu.memory.controller.utilization` | Memory controller busy fraction (extension) |
| `hw.gpu.memory.limit`                  | Total VRAM (bytes)                          |
| `hw.gpu.memory.usage`                  | Used VRAM (bytes)                           |
| `hw.gpu.memory.free`                   | Free VRAM (bytes)                           |
| `hw.temperature`                       | Die temperature (°C)                        |
| `hw.fan.speed`                         | Fan speed (RPM)                             |
| `hw.power`                             | Current power draw (W)                      |
| `hw.power.limit`                       | Power cap (W)                               |
| `hw.energy`                            | Cumulative energy (J)                       |

## Docker

```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
docker run -d \
  --name otel-gpu-collector \
  --device /dev/kfd:/dev/kfd \
  --device /dev/dri:/dev/dri \
  --pid=host \
  -e OTEL_SERVICE_NAME=my-app \
  -e OTEL_RESOURCE_ATTRIBUTES='deployment.environment=production' \
  -e OTEL_EXPORTER_OTLP_ENDPOINT=http://otel-collector:4318 \
  ghcr.io/openlit/otel-gpu-collector:latest
```

`--pid=host` is required for per-process GPU attribution (cmdline, PID, zombie state).

## Docker Compose

```yaml theme={"theme":{"light":"github-light","dark":"github-dark"}}
services:
  otel-gpu-collector:
    image: ghcr.io/openlit/otel-gpu-collector:latest
    pid: host
    environment:
      OTEL_SERVICE_NAME: my-app
      OTEL_RESOURCE_ATTRIBUTES: deployment.environment=production
      OTEL_EXPORTER_OTLP_ENDPOINT: http://otel-collector:4318
    devices:
      - /dev/kfd:/dev/kfd
      - /dev/dri:/dev/dri
    restart: always
```

## Kubernetes (DaemonSet)

```yaml theme={"theme":{"light":"github-light","dark":"github-dark"}}
apiVersion: apps/v1
kind: DaemonSet
metadata:
  name: otel-gpu-collector
  namespace: monitoring
spec:
  selector:
    matchLabels:
      app: otel-gpu-collector
  template:
    metadata:
      labels:
        app: otel-gpu-collector
    spec:
      hostPID: true
      containers:
        - name: collector
          image: ghcr.io/openlit/otel-gpu-collector:latest
          env:
            - name: OTEL_SERVICE_NAME
              value: gpu-collector
            - name: OTEL_RESOURCE_ATTRIBUTES
              value: deployment.environment=production
            - name: OTEL_EXPORTER_OTLP_ENDPOINT
              value: http://otel-collector.monitoring.svc.cluster.local:4318
          securityContext:
            privileged: false
          volumeMounts:
            - name: sys
              mountPath: /sys
              readOnly: true
            - name: dri
              mountPath: /dev/dri
      volumes:
        - name: sys
          hostPath:
            path: /sys
        - name: dri
          hostPath:
            path: /dev/dri
```

<Note>
  Docker `--pid=host` (or Kubernetes `hostPID: true`) and `/dev/dri` are required for per-process GPU attribution via DRM fdinfo.
</Note>

***

<CardGroup cols={2}>
  <Card title="Metrics reference" href="/latest/gpu-collector/metrics#gpu-hardware-telemetry" icon="table">
    Full metrics list with types, units, and attributes
  </Card>

  <Card title="Configuration" href="/latest/gpu-collector/configuration" icon="sliders">
    All environment variables and defaults
  </Card>
</CardGroup>
