用sudo配置GPU MPS,docker里面没效果

本文介绍了在Docker容器内使用sudo配置GPU Multi-Process Service (MPS)无法生效的原因,指出sudo仅在当前用户下提供root权限,而MPS设置并未影响到docker环境。解决方案是切换到root用户进行配置,以实现GPU资源的更高效利用,特别是在并发运行多个深度学习模型时。
摘要由CSDN通过智能技术生成
# ====== 启动 =========
export CUDA_VISIBLE_DEVICES=0         # 这里以GPU0为例,其他卡类似
nvidia-smi -i 0 -c EXCLUSIVE_PROCESS  # 让GPU0变为独享模式。
nvidia-cuda-mps-control -d            # 开启mps服务 
# ====== 查看 =========
ps -ef | grep mps                     # 启动成功后能看到相应的进程
# ====== 停止 =========
nvidia-smi -i 0 -c DEFAULT       # 让GPU恢复为默认模式。
echo quit | nvidia-cuda-mps-control   # 关闭mps服务 

需要在root用户下运行以上命令。

sudo只是在当前用户下拥有root权限,所以MPS的设置还是在当前用户下的,在docker里面的环境没变。

进入root用户

su

更改root用户密码

sudo passwd root

更改成功后nvidia-cuda-mps-server会把不同GPU进程包装到一个进程中,同时加载多个深度学习模型时,就不会像之前那样频繁保存和恢复GPU的上下文了,所以每个模型的速度就和单独跑每个模型时差不多了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值