使用前提:
(1)已经在宿主机安装好了nvidia-docker,可执行nvidia-docker -v命令验证;
(2)已经在宿主机安装好了nvidia驱动,可执行nvidia-smi验证;
(3)确保pull的镜像中的cuda版本小于等于宿主机的cuda版本,可执行nvidia-smi查看宿主机cuda版本。
Nvidia-Docker使用宿主机GPU(使用--gpus参数):
# 使用所有GPU:--gpus all
# 使用两个GPU:--gpus 2
# 指定GPU运行:--gpus '"device=1,2"'
# 使用GPU示例
# 构建tensorflow1.15-gpu容器
# 拉取tensorflow官方提供的tensorflow/tensorflow:1.15.5-gpu镜像
docker pull tensorflow/tensorflow:1.15.5-gpu
nvidia-docker pull tensorflow/tensorflow:1.15.5-gpu
# 构建容器,指定--gpus参数
docker run -itd --gpus all --name tf115-gpu tensorflow/tensorflow:1.15.5-gpu
nvidia-docker run -itd --gpus all --name tf115-gpu tensorflow/tensorflow:1.15.5-gpu
# 注:安装Nvidia-Docker后,可使用nvidia-docker命令,也可以直接使用docker命令,两者均可以使用--gpus参数
容器GPU测试:
(1)容器中执行nvidia-smi命令,若输出GPU相关信息,则说明容器可以调用GPU;
(2)Python环境GPU测试(以构建的tf115-gpu为例),在容器中执行Python(此时使用的ipython),导入tensorflow测试,tf.test.is_gpu_available()输出True,则Python tensorflow GPU环境构建成功。