SuperAPI AI Directory

mig-configure

Deployment & operations

View repository

Updated 10-16 02:34

About this skill

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"
    
  1. 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).

  2. 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"
    
  3. Show available profiles and help the user choose a layout:

    nvidia-smi mig -lgip -i <GB300_INDEX>
    

    Common GB300 MIG profiles:

    ID Profile name (driver-dependent) Approx. memory Use case
    19 1g.35gb (59x) · 1g.31gb (61x) ~30 GB Small models (7-8B), dev/test
    20 1g.35gb+me · 1g.31gb+me ~30 GB Same + media extensions
    15 1g.70gb ~68 GB Slightly larger inference
    14 2g.70gb ~68 GB Medium models (14-30B)
    9 3g.139gb (59x) · 3g.126gb (61x) ~137 GB Large models (70B quantized)
    5 4g.139gb · 4g.126gb ~137 GB Large models, more compute
    0 7g.278gb (59x) · 7g.251gb (61x) ~276 GB Full 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.

  4. 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>
    
  5. Get the MIG device UUIDs:

    nvidia-smi -L
    

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

  6. Show the user how to use MIG devices:

    # Bare metal
    export CUDA_VISIBLE_DEVICES=MIG-<uuid>
    
    # Docker
    docker run --gpus '"device=MIG-<uuid>"' ...
    
  7. 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.