mig-configure

oleh nvidia

Configure NVIDIA MIG (Multi-Instance GPU) partitions on the DGX Station GB300, including enabling MIG mode, choosing a profile layout, creating instances, and…

npx skills add https://github.com/nvidia/dgx-spark-playbooks --skill mig-configure

MIG Configuration on DGX Station

Configure MIG (Multi-Instance GPU) partitions on the DGX Station GB300.

Steps

  1. Find the GB300 GPU index. Run:

    nvidia-smi --query-gpu=index,name --format=csv,noheader
    
  2. Check current MIG state:

    nvidia-smi -i <GB300_INDEX> -q | grep -i "MIG Mode"
    
  3. If MIG is already enabled, show current instances:

    nvidia-smi mig -lgi -i <GB300_INDEX>
    nvidia-smi mig -lci -i <GB300_INDEX>
    

    If the user wants to reconfigure, destroy existing instances first (step 6).

  4. If MIG is not enabled, enable it. All GPU processes must be stopped first:

    # Check for running GPU processes
    sudo fuser -v /dev/nvidia*
    
    # Enable MIG
    sudo nvidia-smi -i <GB300_INDEX> -mig 1
    
    # Verify
    nvidia-smi -i <GB300_INDEX> -q | grep -i "MIG Mode"
    
  5. Show available profiles and help the user choose a layout:

    nvidia-smi mig -lgip -i <GB300_INDEX>
    

    Common GB300 MIG profiles:

    IDProfile name (driver-dependent)Approx. memoryUse case
    191g.35gb (59x) · 1g.31gb (61x)~30 GBSmall models (7-8B), dev/test
    201g.35gb+me · 1g.31gb+me~30 GBSame + media extensions
    151g.70gb~68 GBSlightly larger inference
    142g.70gb~68 GBMedium models (14-30B)
    93g.139gb (59x) · 3g.126gb (61x)~137 GBLarge models (70B quantized)
    54g.139gb · 4g.126gb~137 GBLarge models, more compute
    07g.278gb (59x) · 7g.251gb (61x)~276 GBFull GPU as single instance

    Profile names depend on your driver version; the profile IDs do not. Always read the exact names and sizes on your box with nvidia-smi mig -lgip -i <GB300_INDEX>, and create instances by ID. (Driver 59x reports the …35gb/139gb/278gb names; 61x reports …31gb/126gb/251gb for the same IDs.)

    Suggest layouts based on the user's workload (use the stable IDs). Examples:

    • Two models (70B + smaller): one 3g + two 1g.70gb → IDs 9,15,15
    • Many small models: three 1g → IDs 19,19,19
    • One large model with isolation: the full 7g → ID 0

    MIG layouts are constrained by fixed memory-slice placement, not just total memory — never sum nominal GB and assume any combination fits. A 3g + 2g + 2g layout (9,14,14) is not realizable, for example, because the second 2g has no legal placement after a 3g. And nvidia-smi mig -lgip Free/Total tracks compute (GPC) slices, so it overstates the number of instances you can actually create (QA observed only 3 creatable 1g instances on a 61x Station even though Free/Total reported 7). Always validate a specific layout with nvidia-smi mig -lgipp before relying on it.

    Ask the user what models they want to run before suggesting a layout.

  6. Create (or recreate) instances:

    If reconfiguring, destroy existing instances first:

    sudo nvidia-smi mig -dci -i <GB300_INDEX>
    sudo nvidia-smi mig -dgi -i <GB300_INDEX>
    

    Then create the new layout:

    sudo nvidia-smi mig -cgi <PROFILE_IDS> -C -i <GB300_INDEX>
    
  7. Get the MIG device UUIDs:

    nvidia-smi -L
    

    Note the MIG-<uuid> entries — these are used to target specific MIG instances.

  8. Show the user how to use MIG devices:

    # Bare metal
    export CUDA_VISIBLE_DEVICES=MIG-<uuid>
    
    # Docker
    docker run --gpus '"device=MIG-<uuid>"' ...
    
  9. Report the final layout to the user with UUIDs and suggested docker commands for each instance.

Disabling MIG

If the user wants to return to full-GPU mode:

# Stop all workloads using MIG instances first
sudo nvidia-smi mig -dci -i <GB300_INDEX>
sudo nvidia-smi mig -dgi -i <GB300_INDEX>
sudo nvidia-smi -i <GB300_INDEX> -mig 0

Do not run nvidia-fabricmanager on DGX Station. It has a single GB300 over NVLink-C2C (no NVSwitch fabric), so Fabric Manager is not installed and systemctl start nvidia-fabricmanager fails with "Unit not found." NVLink-C2C re-initializes automatically after MIG is disabled. If MIG mode is stuck in a "pending" state, reset the GPU instead: sudo nvidia-smi -i <GB300_INDEX> --gpu-reset.