You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker容器内运行Python脚本GPU内存不足,是否使用系统剩余资源?

问题解答

核心疑问解答

容器内运行Python脚本不会绕过容器分配的资源去使用系统剩余资源。默认情况下,NVIDIA Docker容器能看到宿主机的GPU,但GPU资源的隔离需要额外配置;当前GPU内存被占满的原因是宿主机上的/usr/bin/python3进程(PID 2322)占用了39239MiB内存,并非容器内进程导致。

解决步骤

  1. 释放被占用的GPU内存
    直接终止宿主机上的占用进程:
sudo kill -9 2322

执行后再次运行nvidia-smi,确认GPU内存已释放。

  1. 限制容器的GPU资源使用(可选)
    为避免后续容器或宿主机进程过度占用GPU,启动TensorFlow容器时可以指定GPU内存限制:
  • 方法一:使用Docker参数限制内存
    docker run --gpus all --memory=30g nvidia/tensorflow:latest
    
  • 方法二:使用NVIDIA环境变量限制GPU内存配额
    docker run --gpus all -e NVIDIA_MEMORY_LIMIT=30720 nvidia/tensorflow:latest
    
    (注:30720代表30GB,单位为MiB,可根据需求调整)
  1. 排查宿主机进程残留
    检查宿主机是否有其他未正常退出的Python/CUDA进程,避免再次出现GPU内存被无故占用的情况:
ps aux | grep python | grep -v grep

对残留进程可按需终止。

内容的提问来源于stack exchange,提问作者Nikolay Dyankov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 22:40:27