Nvidia容器运行时
Nvidia容器运行时支持GPU,可以方便的构建和部署容器化的使用GPU加速的应用程序,就是在docker引擎外面包裹了一层,可以在docker里支持GPU的驱动。
安装跟着官网的说明就可以顺利完成。
Nvidia docker镜像
Nvida把cuda的docker镜像也做好了,直接从dockerhub下载就可以,当时的tensorflow不支持更高的cuda版本,nvidia提供了安装好cudnn的镜像,我用9.0-cudnn7-devel
,基于这个镜像安装python的cnn深度学习环境, 用于人脸识别。
python环境包括:
- python3.6.5,用python3.5的话跑keras有问题,废了挺大劲,最后是编译安装的3.6.5
- dlib==19.16.0
- setuptools>=36
- opencv-python==4.0.0.21
- opencv-contrib-python==4.0.0.21
- keras==2.2.4
- scikit-learn==0.20.0
- tensorflow-gpu==1.12.0
- PyMySQL==0.9.3
- redis==3.2.1
- psutil==5.4.5
dockerfile在这里,我打镜像的时候没设字符编码为UTF-8,运行的时候要加上,不然使用中文有坑。
docker运行
docker运行命令加上--runtime=nvidia
,如果有多块显卡可以通过-e
指定使用哪块,如-e NVIDIA_VISIBLE_DEVICES=0