Maximizing GPU ROI: How to Partition NVIDIA A100 & H100 with MIG
Most AI teams provision GPUs the way they provision servers: one workload, one full device. But running a 7B-parameter inference endpoint or a batch embedding job doesn't require a massive 80GB of HBM3 memory.
When you run lightweight workloads on a full A100 or H100, most of the silicon sits idle—while your budget burns away.
NVIDIA’s Multi-Instance GPU (MIG) technology solves this by physically dividing a single GPU into up to 7 independent, hardware-isolated instances. Here is a quick breakdown of how it works and how you can implement it to maximize your hardware ROI.
Why Choose MIG Over Time-Slicing?
Unlike software-based sharing methods (like CUDA MPS or time-slicing) where processes cooperatively share resources, MIG offers true hardware-level isolation.
Dedicated Resources: Each MIG instance gets its own assigned Streaming Multiprocessors (SMs), memory, and L2 cache.
Zero Resource Contention: A massive, memory-heavy request on one instance cannot starve, slow down, or crash a lightweight model running on the neighbor instance.
Predictable Latency: Enterprise AI hosting requires strict latency guarantees. MIG ensures your throughput remains consistent regardless of tenant load.
A100 vs. H100 MIG Profiles at a Glance
NVIDIA allows you to partition your card using pre-defined configurations called "profiles." Depending on your specific workload, you can create a uniform geometry (identical slices) or a mixed geometry (different sized slices on one card).
NVIDIA A100 (40GB/80GB): Supports up to 7 concurrent instances (ranging from
1g.5gbconfigurations up to a full7g.40gbslice).NVIDIA H100 (80GB): Supports up to 7 concurrent instances (ranging from
1g.10gbup to a full7g.80gbslice).
Practical Example: On a single H100 80GB, you can carve out one
3g.40gbinstance to serve a mid-sized 13B model, and use the remaining capacity to spin up two independent2g.20gbinstances for embedding or reranking models. That's three separate production services running securely on one physical card!
Step-by-Step Implementation Outline
Configuring MIG is entirely CLI-driven using standard nvidia-smi commands. The basic workflow involves:
Checking Current Status: Checking if MIG mode is active on your target GPU index.
Enabling MIG Mode: Activating the hardware switch using
sudo nvidia-smi -i 0 -mig 1.Creating Instances: Defining your GPU and Compute instances based on your desired profile IDs.
Targeting Workloads: Using
CUDA_VISIBLE_DEVICESor Docker container flags to pin specific models to specific hardware UUIDs.
🚀 Read the Full Step-by-Step Guide with Exact CLI Commands
Ready to set up your mixed geometry profiles, automate persistence across server reboots using mig-parted, and see the exact production Docker scripts?
We have published the complete technical walkthrough with copy-pasteable configuration scripts on our main platform.
👉 Click Here to Read the Full MIG Partitioning Tutorial on GPUYard

Comments
Post a Comment