как использовать nvidia-docker для создания сервиса в docker swarm

Как использовать nvidia-docker для создания службы в роевом режиме работы докера. Я пытаюсь обучить модель тензорного потока в этой роевой сети для распределенного обучения. Я обнаружил, что одним из способов может быть запуск роевой сети из разных контейнеров на разных машинах и использование графического процессора на каждой машине для прохождения распределенное обучение. Если это невозможно в режиме роя, есть ли способ выполнить вышеуказанную задачу?

docker service create --name tensorflow --network overnet saikishor/tfm:test azt0tczwkxaqpkh9yaea4laq1

Поскольку --detach=false не был указан, задачи будут создаваться в фоновом режиме.

В будущем выпуске --detach=false станет значением по умолчанию.

но в службе докеров ls у меня есть это

ID НАЗВАНИЕ РЕЖИМ РЕПЛИКА ИЗОБРАЖЕНИЕ ПОРТЫ

uf6jgp3tm6dp тензорный поток реплицирован 0/1 saikishor/tfm:test


person saikishor    schedule 25.10.2017    source источник


Ответы (2)


Это невозможно, когда вопрос задан, но не сейчас.

С момента выпуска nvidia-docker2 новый контейнер docker поддерживается среда выполнения, обычно называемая nvidia. Это позволяет docker run --runtime nvidia ... получать доступ к графическому процессору, подобному nvidia-docker run .... Кроме того, после настройки параметра dockerd --default-runtime nvidia такие инструменты, как docker-compose, Docker Swarm и Kubernetes, также могут использовать GPU.

nvidia-gpu-docker

Установить

Дистрибутивы на основе Debian

curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | \
  sudo apt-key add -
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
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

Дистрибутивы на основе RHEL

distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.repo | \
  sudo tee /etc/yum.repos.d/nvidia-docker.repo

Конфигурация

{
    "runtimes": {
        "nvidia": {
            "path": "nvidia-container-runtime",
            "runtimeArgs": []
        }
    },
    "default-runtime": "nvidia",
    ...
}
person Yan QiDong    schedule 05.11.2018

На данный момент nvidia-docker не поддерживает docker swarm. Так что сейчас нет возможности. Нам нужно создать внешнюю сеть, чтобы соединить их вместе.

person saikishor    schedule 15.11.2017