AI Infra Interviews logo
Reading performance · free reference

Occupancy

Occupancy is resident warps divided by the device’s supported resident-warp limit at the stated scope. It measures available thread state, not useful arithmetic throughput.

Achieved occupancyTheoretical occupancy

How it works

Theoretical occupancy is bounded by block size, registers, shared memory and architectural limits. Achieved occupancy reflects actual residency over the measured execution, including grid size and tail effects.

One illustrative scheduler opportunity

Four resident warps. Two ready. One selected.

All four warps remain resident. C and D are eligible at this opportunity, and the scheduler selects C. This teaching snapshot does not specify a device’s total scheduler count or issue width. Occupancy alone cannot distinguish these states.

Work through an example

On an illustrative SM supporting 64 resident warps, 32 resident warps correspond to 50% occupancy. If they provide enough ready work, raising that number may not shorten the kernel.

Where the term can mislead

Forcing fewer registers can improve occupancy while adding spill traffic. Use kernel duration and correctness to decide whether the trade helped.

Connect the idea

Take it into practice

Continue with the existing concept, apply it to an interview problem, or follow a course lesson. Access requirements are shown before you open a page.

New to GPUs? Start with the free execution-model concept.

Sources and scope

Examples here are teaching calculations, not measured GPU performance. Consult the linked documentation for the exact device, instruction and tool version. Source review: 25 October 2026.

  1. NVIDIA Nsight Compute Profiling Guide ↗
  2. NVIDIA CUDA C++ Best Practices Guide ↗