MIG 切分

更新时间:2025年9月3日 15:20 浏览:62

nvidia-mig-parted

https://github.com/NVIDIA/mig-parted
https://git.junyouji.com/NVIDIA/mig-parted

物理机编译

安装 go 环境

wget https://golang.org/dl/go1.24.linux-amd64.tar.gz

tar -C /usr/local -xzf go1.24.linux-amd64.tar.gz

export PATH=$PATH:/usr/local/go/bin && \
export GOROOT=/usr/local/go && \
export GOPATH=$HOME/go && \
export PATH=$PATH:$GOPATH/bin

编译 mig-parted

git clone http://github.com/NVIDIA/mig-parted
cd mig-parted
go build ./cmd/nvidia-mig-parted

docker 内 编译

docker run \
    --rm \
    -v $(pwd):/dest \
    golang:1.24.0 \
    sh -c "
    go install github.com/NVIDIA/mig-parted/cmd/nvidia-mig-parted@latest
    mv /go/bin/nvidia-mig-parted /dest/nvidia-mig-parted

可以将将编译好的 nvidia-mig-parted 持贝到 /usr/local/bin/ 下

显卡切分

cat <<EOF | nvidia-mig-parted apply -f -
version: v1
mig-configs:
  whatever:
  - devices: [0]
    mig-enabled: true
    mig-devices:
      "1g.18gb": 2
      "2g.35gb": 1
      "3g.71gb": 1
  - devices: [1,2,3,4,5,6,7]
    mig-enabled: false
EOF

显卡 0 切分为 4 份, 其它显卡不切分

挂载进docker

docker run \
  --gpus '"device=0:0"' \

0:0 - 挂载 0 号卡切分后的第 0 个 mig 显卡

常见问题

报错:

unable to get device name: [failed to find device with id '22a3']

需要执行 sudo update-pciids
国内会执行失败
手动下载:http://pci-ids.ucw.cz/pci.ids
替换掉 /usr/share/misc/pci.ids

导航