Dash0 acquires Polar Signals

GPU Profiling

Maximize GPU efficiency

Introducing Continuous GPU Profiling. See the last hours of performance insights.

GPU Profiler

Trusted by

Vercel
Notion
Braintrut
Canonical
fal
langchain
legora
materialize
modal
oqton
s2.dev
tigris
weaviate
Vercel
Notion
Braintrut
Canonical
fal
langchain
legora
materialize
modal
oqton
s2.dev
tigris
weaviate
Vercel
Notion
Braintrut
Canonical
fal
langchain
legora
materialize
modal
oqton
s2.dev
tigris
weaviate
Vercel
Notion
Braintrut
Canonical
fal
langchain
legora
materialize
modal
oqton
s2.dev
tigris
weaviate

Optimize GPU performance by profiling GPU workloads

Correlate GPU hardware metrics with CPU activity in a single view to find exactly where cycles are being wasted.

Get the right metrics to maximize GPU utilization

Optimize GPU workloads precisely

See GPU utilization in detail and optimize with precision

NVIDIA CUDA

Supports CUDA 11+ and modern NVIDIA GPUs, including instruction-level PC sampling with stall-reason attribution

Python

Supports multiprocessing and top frameworks

PyTorch

Understand GPU usage across ML pipelines

Intel upon request

Compatible with oneAPI and Intel Extension for PyTorch

AMD upon request

Visibility into HIP kernels and AMD Instinct accelerators

Frequently asked questions

With Continuous Profiling for GPUs you can understand GPU usage in production via multiple metrics, correlate CPU activity with GPU utilization, and visualize CPU time spent with flame charts to find out what's keeping the GPU waiting.

No, you don't have to use Kubernetes or even containers. The agent needs Linux (x86 or ARM) and the GPU Metrics Agent needs Linux and NVIDIA drivers.

Right now, the GPU metrics agent collects the following metrics (more can be added).

  • GPU Utilization
  • GPU Memory Utilization
  • GPU Power Usage

The Continuous Profiler for GPUs supports profiling GPU workloads running on NVIDIA GPUs. If you are interested in us adding more accelerators, such as AMD, Intel, Apple GPUs, or TPUs, please reach out to us.

PC sampling captures not just which GPU instruction was running, but why it stalled (e.g. a memory dependency or a synchronization wait) at very high sample rates. It’s traditionally been limited to interactive profilers because of overhead.

Boost your apps, maximize efficiency, and lower expenses

Every idle GPU cycle is money spent for nothing. See exactly where utilization drops, correlate it with what the CPU was doing at that moment and fix the gap