Monitor GPU Utilization and VRAM with DCGM Exporter

We design and deploy artificial intelligence systems: from prototype to production-ready solutions. Our team combines expertise in machine learning, data engineering and MLOps to make AI work not in the lab, but in real business.
Showing 1 of 1All 1566 services
Monitor GPU Utilization and VRAM with DCGM Exporter
Medium
from 1 day to 3 days
Frequently Asked Questions

AI Development Areas

AI Solution Development Stages

Latest works

  • image_website-b2b-advance_0.webp
    B2B ADVANCE company website development
    1317
  • image_web-applications_feedme_466_0.webp
    Development of a web application for FEEDME
    1226
  • image_websites_belfingroup_462_0.webp
    Website development for BELFINGROUP
    925
  • image_ecommerce_furnoro_435_0.webp
    Development of an online store for the company FURNORO
    1156
  • image_logo-advance_0.webp
    B2B Advance company logo design
    620
  • image_crm_enviok_479_0.webp
    Development of a web application for Enviok
    894

Problem: how not to lose money on GPUs?

Picture this: you start fine-tuning an LLM on 8 A100s. After 6 hours, OOM strikes—2000 iterations lost. Or your GPUs are at 2% utilization while you pay full price. Without monitoring, it's a gamble. We've seen it on 30+ projects: proper GPU monitoring with DCGM Exporter, Prometheus, and Grafana cuts downtime by 70% and saves up to 40% on infra costs. Control VRAM, utilization, and Tensor Cores—key for stable workflow.

We offer a turnkey GPU monitoring setup in 2–3 days. Contact us for a free assessment.

Why DCGM Exporter is the best choice for NVIDIA GPUs?

DCGM (Data Center GPU Manager) is an official NVIDIA tool. Unlike nvidia-smi, it exposes profile metrics like Tensor Cores, NVLink, and accurate SM load. Comparison:

Metric nvidia-smi DCGM Exporter
GPU utilization, % Yes Yes (more accurate)
VRAM used/free Yes Yes
Temperature Yes Yes
Tensor Core active No Yes
DRAM bandwidth No Yes
NVLink throughput No Yes
ECC errors Yes Yes

DCGM gives 10x more metrics and natively exports to Prometheus, as confirmed by NVIDIA documentation.

Which metrics are critical for AI workloads?

For AI engineers, not only basic utilization and VRAM matter. Tensor Cores are key for training and inference performance. The metric DCGM_FI_PROF_PIPE_TENSOR_ACTIVE shows how efficiently these blocks are used. If it's low while GPU load is high, you're likely hitting memory or bus bottlenecks. Also critical is NVLink usage—in distributed training, the bottleneck is often interconnects.

Typical problems and solutions

Problem Cause Solution via monitoring
OOM due to VRAM Batch size too large Alert at 95% VRAM, analyze growth rate trend
Low GPU utilization CPU or I/O bottleneck Dashboard shows CPU, GPU, and NVLink load
GPU overheating Insufficient cooling Alert at temperature >85°C, monitor throttling

How we set up monitoring turnkey

Step 1. Deploy DCGM Exporter

We install DCGM Exporter via Docker on each GPU node:

docker run -d --gpus all --cap-add SYS_ADMIN -p 9400:9400 --name dcgm-exporter nvcr.io/nvidia/k8s/dcgm-exporter:3.3.5-3.4.0-ubuntu22.04

For clusters, we use docker-compose with additional collector settings. We match the version to your OS and NVIDIA drivers.

Step 2. Configure Prometheus

We create a scrape target for DCGM metrics and alerting rules:

# prometheus.yml
global:
  scrape_interval: 15s
scrape_configs:
  - job_name: dcgm
    static_configs:
      - targets:
          - gpu-server-1:9400
          - gpu-server-2:9400
rule_files:
  - "gpu_alerts.yml"

Step 3. Set up alerts

We define key alerts: OOM (VRAM >95%), overheating (>85°C), low utilization (<20%), and service unavailability.

# gpu_alerts.yml
groups:
  - name: gpu_alerts
    rules:
      - alert: GPUMemoryNearFull
        expr: (DCGM_FI_DEV_FB_USED / DCGM_FI_DEV_FB_TOTAL) > 0.95
        for: 5m
        labels:
          severity: warning
        annotations:
          summary: "GPU {{ $labels.gpu }} on {{ $labels.instance }}: VRAM > 95%"
      - alert: GPUUtilizationLow
        expr: avg_over_time(DCGM_FI_DEV_GPU_UTIL[30m]) < 20
        for: 1h
        labels:
          severity: info
        annotations:
          summary: "Low GPU utilization on {{ $labels.instance }}"

How to set up an alert for OOM due to VRAM?

Add a rule that checks if VRAM exceeds 95% for 5 minutes. On trigger, you'll get a notification via Telegram or Slack. Additionally, you can set an alert on memory growth rate: if it increases by 10% in 2 minutes, it's a sign of impending OOM. We include such rules in the base configuration.

Step 4. Grafana dashboard

We build panels for utilization, VRAM, Tensor Cores, and temperature. Example VRAM panel:

{
  "title": "VRAM Usage %",
  "type": "gauge",
  "targets": [{
    "expr": "DCGM_FI_DEV_FB_USED / DCGM_FI_DEV_FB_TOTAL * 100",
    "legendFormat": "{{instance}} GPU{{gpu}}"
  }],
  "fieldConfig": {
    "thresholds": {
      "steps": [
        {"color": "green", "value": 0},
        {"color": "yellow", "value": 80},
        {"color": "red", "value": 95}
      ]
    }
  }
}

We create separate dashboards for training (LLM, CV) and inference, adding Tensor Core utilization, NVLink throughput, and p99 latency for inference. All dashboards are adapted to your models.

Step 5. Documentation and training

After deployment, we hand over: operation manual, alert scheme, dashboard access, and a short training for DevOps/ML engineers.

What's included

  • Installation and configuration of DCGM Exporter on each GPU node
  • Prometheus and alerting rules setup (Telegram/Slack)
  • Grafana dashboards tailored to your tasks (training, inference)
  • Integration with existing monitoring stack
  • Documentation and team training
  • 1 month of support after launch

Our experience and guarantees

Years of experience in MLOps. 30+ GPU infrastructure projects for AI startups and enterprises. Certified NVIDIA engineers. We guarantee 24/7 monitoring stability. Reach out for a tailored setup—we'll evaluate your infrastructure and propose the best solution.