马春杰杰博客
致力于深度学习经验分享!

LXD如何添加MIG的GPU?

最新目录

1、首先开启MIG

sudo nvidia-smi -i 0 -mig 1 # 针对第 0 块 GPU
sudo nvidia-smi -i 1 -mig 1 # 针对第 1 块 GPU
sudo nvidia-smi -r # 重置使之生效

如果重置不好使,就重启电脑。

2、然后确定划分的数量,这个划分不是随意划分的,是有固定搭配的:

nvidia-smi mig -lgip

如上所示,这里以MIG 1g.10gb规格为例,意思是划分为4块,每块10G显存:

sudo nvidia-smi mig -i 0 -cgi 15,15,15,15 -C
sudo nvidia-smi mig -i 1 -cgi 15,15,15,15 -C

 

  • -cgi 15 里的 15 就是 MIG 1g.10gbProfile ID

  • 连续写 4 个,表示在该 GPU 上创建 4 个这样的实例。

  • -C 表示提交配置。

然后验证:nvidia-smi -L

3、最后,将分好的实例分为LXD容器:

lxc config device add t3 mig0 gpu \
gputype=mig \
mig.uuid=MIG-0a8dad45-3186-5221-ae18-52e54ffee0ac \
pci=0000:3b:00.0

其中,pci的查看:nvidia-smi --query-gpu=pci.bus_id --format=csv

找到其中对应的pci值即可~

4、关闭MIG

删除现有 MIG 实例

MIG 是两层结构:Compute Instance (CI)GPU Instance (GI) 内。删除顺序必须是 CIGI

查看现有 GI/CI

nvidia-smi mig -lgi # 列出 GPU Instances

nvidia-smi mig -lci # 列出 Compute Instances

删除方式(示例 GPU0):

# 删除 GPU0 上所有 CI

sudo nvidia-smi mig -i 0 -dci -gi ALL -C

# 删除 GPU0 上所有 GI

sudo nvidia-smi mig -i 0 -dgi ALL -C

GPU1 同样操作:

sudo nvidia-smi mig -i 1 -dci -gi ALL -C

sudo nvidia-smi mig -i 1 -dgi ALL -C

关闭 MIG 模式

清空之后就能关掉 MIG 模式:

sudo nvidia-smi -i 0 -mig 0
sudo nvidia-smi -i 1 -mig 0

重置 GPU 生效

sudo nvidia-smi -r

此时再 nvidia-smi -L,应该看到恢复成整卡(比如 A100-SXM4-40GB),不会再显示 MIG 子设备。

有些GPU不支持ALL写法,此时更推荐使用下面的脚本一键关闭(直接在终端粘贴运行就行):

运行结果:

 

赞(0) 打赏
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《LXD如何添加MIG的GPU?》
文章链接:https://www.machunjie.com/linux/1880.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。

评论 抢沙发

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫

微信扫一扫

:smile: :sad: :arrow: :cool: :confused: :cry: :eek: :evil: :exclaim: :idea: :lol: :mad: :mrgreen: :neutral: :question: :razz: :redface: :rolleyes: :surprised: :wink: :biggrin: :twisted: