Deployment Considerations#
MIG functionality is provided as part of the NVIDIA GPU driver. The minimum driver versions are listed below:
GPU |
CUDA Version |
NVIDIA Driver Version |
|---|---|---|
A100 |
CUDA 11 |
R450 (>= 450.80.02) or later |
A30 |
CUDA 11 |
R460 (>= 460.73.01) or later |
H100 |
CUDA 12 |
R525 (>= 525.85.12) or later |
H20 |
CUDA 12 |
R535 (>= 535.161.07) or later |
H200 |
CUDA 12 |
R550 (>= 550.90.07) or later |
B200, GB200 |
CUDA 12 |
R570 (>= 570.133.20) or later |
B300 |
CUDA 12.9 |
R580 (>= 580.82.07) or later |
RTX PRO 6000 Blackwell (all editions) |
CUDA 12 |
R575 (>= 575.51.03) or later |
RTX PRO 5000 Blackwell |
CUDA 12 |
R575 (>= 575.57.08) or later |
RTX PRO 4500 Blackwell |
CUDA 12 |
R575 (>= 575.64) or later |
GB300 (DGX Station) |
CUDA 13 |
R595 (>= 595.58.03) or later |
Thor iGPU (Jetson T5000) |
CUDA 13 |
R595, as shipped in JetPack 7.2 (Jetson Linux 39.2), or later |
System Considerations#
The following system considerations are relevant for when the GPU is in MIG mode.
MIG is supported only on Linux operating system distributions supported by CUDA. It is also recommended to use the latest NVIDIA Datacenter Linux. Refer to the Driver Installation Guide.
Note
Also note the device nodes and
nvidia-capabilitiesfor exposing the MIG devices. The/procmechanism for system-level interfaces is deprecated as of 450.51.06 and it is recommended to use the/devbased system-level interface for controlling access mechanisms of MIG devices through cgroups. This functionality is available starting with 450.80.02+ drivers.Supported configurations include:
Bare-metal, including containers
GPU pass-through virtualization to Linux guests on top of supported hypervisors
vGPU on top of supported hypervisors
MIG allows multiple vGPUs (and thereby VMs) to run in parallel on a single A100, while preserving the isolation guarantees that vGPU provides. For more information on GPU partitioning using vGPU and MIG, refer to the technical brief.
Setting MIG mode on the A100/A30 requires a GPU reset (and thus super-user privileges). Once the GPU is in MIG mode, instance management is then dynamic. Note that the setting is on a per-GPU basis.
On NVIDIA Ampere architecture GPUs, similar to ECC mode, MIG mode setting is persistent across reboots until the user toggles the setting explicitly
All daemons holding handles on driver modules need to be stopped before MIG enablement. This includes monitoring daemons such as DCGM and nvsm, and on workstations, the desktop session (display manager / Xorg), which
nvidia-smimight not list as a GPU process.This is true for systems such as DGX which may be running system health monitoring services such as nvsm or GPU health monitoring or telemetry services such as DCGM.
Toggling MIG mode requires the
CAP_SYS_ADMINcapability. Other MIG management, such as creating and destroying GPU and compute instances, requires themig-configcapability, which root holds by default. To delegate it to a group of non-privileged users:Stop the NVIDIA tools from resetting the permissions of the
mig-configdevice node:$ echo "DeviceFileModify: 0" | sudo tee /proc/driver/nvidia/capabilities/mig/config
Give the group read access to that device node. Its minor number is the
DeviceFileMinorvalue in/proc/driver/nvidia/capabilities/mig/config(1 by default):$ sudo chgrp <group> /dev/nvidia-caps/nvidia-cap1 $ sudo chmod 0440 /dev/nvidia-caps/nvidia-cap1
Both settings are lost when the driver reloads or the system reboots, so reapply them at boot. Refer to CUDA Device Enumeration for details on device nodes and capabilities.
Application Considerations#
Users should note the following considerations when the GPU is in MIG mode:
No graphics APIs are supported, except on
+gfxprofiles of RTX PRO 6000 Blackwell (all editions), RTX PRO 5000 Blackwell, RTX PRO 4500 Blackwell, and Thor iGPU (technology preview). Non-+gfxprofiles, and all other GPUs, have no graphics support. On+gfxprofiles:OpenGL and Vulkan are supported, including headless use through EGL. For graphics in virtual machines (vWS profiles), refer to the vGPU documentation.
The minimum driver is the same as the GPU’s row in the minimum driver table above.
MIG instances have no display output.
On Workstation and Max-Q editions, switch the GPU to compute display mode with DisplayModeSelector first.
Bare-metal MIG is Linux only.
Video encode/decode is set by
+me/-me, not+gfx.
With driver R570, only P2P between MIG instances on the same GPU is supported. P2P between MIG instances on different GPUs, or between MIG instances to non-MIG mode GPU devices are not supported.
CUDA IPC across GPU instances is not supported. CUDA IPC across Compute instances is supported.
CUDA debugging (e.g. using cuda-gdb) and memory/race checking (for example, using cuda-memcheck or compute-sanitizer) is supported.
CUDA MPS is supported on top of MIG. The only limitation is that the maximum number of clients (48) is lowered proportionally to the Compute Instance size.
GPUDirect RDMA is supported when used from GPU Instances.
NCCL 2.31 and later provide experimental support for MIG. Each rank must use a distinct MIG instance, the CUDA driver must be version 13.0 or later, and Multi-Node NVLink must be disabled (
NCCL_MNNVL_ENABLE=0). For details, refer to Using MIG instances in the NCCL User Guide.Profiling of shared GPU resources is not supported. This is an existing limitation.