web-dev-qa-db-fra.com

La connexion GPU est-elle possible avec Docker pour Windows?

J'essaie d'exécuter une application dans un conteneur Docker dans Windows 10.

Mais je ne parviens pas à faire fonctionner le GPU dans Docker.

J'ai lu qu'il avait besoin de "Pass-through GPU".

Comment dois-je contourner cela?

10
Srihari Humbarwadi

L'accès au GPU à partir d'un conteneur Docker n'est actuellement pas pris en charge sous Windows.

Vous avez besoin nvidia-docker, mais qui n'est actuellement pris en charge que sur les plates-formes Linux. Le passthrough du GPU avec Hyper-v nécessiterait une affectation de périphérique discrète (DDA), qui est actuellement uniquement dans Windows Server, et ( au moins en 2015 ) il n'était pas prévu de changer cet état de choses. Par conséquent, NVIDIA ne porte pas nvidia-docker pour Windows pour le moment.

Un peu plus d'informations ici: https://devblogs.nvidia.com/nvidia-docker-gpu-server-application-deployment-made-easy/

Mise à jour (octobre 2019) : nvidia-docker est obsolète, car Docker 19.03 prend en charge nativement les GPU NVIDIA. Installez plutôt nvidia-container-runtime, et utilisez le docker run --gpus all drapeau. Vous pouvez également exécuter Conteneurs Windows avec accélération GP sur un hôte Windows, à l'aide de Docker 19.03, mais pas sur un conteneur Linux.

9
4Oh4