Configure Docker para usar un contenedor compatible con la GPU de Nvidia [Ubuntu 18.04]

2019/11/18

Docker tiene soporte nativo para "Container Acceleration con Nvidia GPU" desde la versión 19.03.Esta función está disponible mediante el uso de NVIDIA Container Toolkit.Aquí, realice los ajustes iniciales necesarios para ello.

环境
SO: Ubuntu 18.04 LTS
GPU: GTX1080

Paso XNUMX: verifique los requisitos previos

Antes de usar la "aceleración de contenedores por GPU" de Docker, revisemos el entorno.Los contenedores de GPU no se pueden utilizar en entornos demasiado antiguos.

  • GNU / Linux x86_64 (versión del kernel> 3.10) ← Ubuntu 18.04 así que OK
  • GPU NVIDIA con arquitectura> Fermi (2.1) ← Si la GPU es para escritorio, GTX 600 o posterior está bien
  • Versión del controlador NVIDIA ≧ 361.93 ← Vea el paso XNUMX a continuación

Consulte la página siguiente para obtener más detalles.

Paso XNUMX: instalar Docker

Si aún no ha instalado Docker, siga los pasos a continuación para instalarlo.

Paso XNUMX: Instale el controlador de la GPU de Nvidia

Se requiere el controlador Nvidia para ejecutar el contenedor GPU (contenedor CUDA).

La versión del controlador de Nvidia debe ser mayor que la versión de CUDA que desea usar (por ejemplo, en tensorflow, la versión de CUDA requerida es exactamente diferente según la versión que use).

Correspondencia entre la versión CUDA y la versión del controlador Nvidia
Correspondencia entre la versión CUDA y la versión del controlador Nvidia

Siempre que instale el controlador Nvidia correctamente, no es necesario que instale el kit de herramientas CUDA o el kit de herramientas NVIDIA Container Toolkit por separado.

El método de instalación del controlador Nvidia se resume a continuación.

Paso XNUMX: hacer que el contenedor de GPU esté disponible en Docker

Ingrese lo siguiente desde la terminal.
Referencia oficial: https://github.com/NVIDIA/nvidia-docker

#Añadir distribución de repositorio de paquetes = $ (. / Etc / os-release; echo $ ID $ VERSION_ID) curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add- curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list sudo apt-get update && sudo apt-get install -y nvidia-container-toolkit sudo systemctl restart docker

Comprobar el funcionamiento

#Probado con la última ejecución oficial de la ventana acoplable de imágenes CUDA --gpus all nvidia / cuda: 9.0-base nvidia-smi

Si todo va bien, verá esta pantalla.

Para usar el contenedor de GPU a partir de ahora, agregue la opción "–gpus" a "Docker run".

Si acaba de instalar Docker, es posible que no se ejecute a menos que agregue sudo antes de ejecutar Docker.
[Ubuntu] Configuración y precauciones para ejecutar Docker sin el comando sudo

Estas son las configuraciones iniciales necesarias para usar el contenedor compatible con GPU de Docker en Ubuntu.

Libro de referencia