Я бы хотел docker контейнировать мой python скрипт, который использует gpu. Причина контейнера заключается в том, что я пытаюсь запустить этот код на сервере, на котором установлена python3 .5, но для stanfordnlp требуется python3 .6 +.
Таким образом, мой подход заключается в создании контейнера, который использует самое последнее изображение python, запустите сценарий python, который будет использовать nvidia gpu.
Ниже приведен фрагмент python код, в который импортируется stanfordnlp для техники лемматизации
import stanfordnlp
import pandas as pd
import string
stanfordnlp.download('en')
nlp = stanfordnlp.Pipeline(processors='tokenize,mwt,lemma,pos', use_gpu=True)
Как вы можете видеть, я явно набрал use_gpu = True, хотя по умолчанию для этой ссылки
* установлено значение True. 1011 * Далее я написал Dockerfile
FROM python:3
WORKDIR /usr/src/app
COPY lemmatizer.py ./
COPY eng_wikipedia_2016_1M-sentences.txt ./
RUN pip install stanfordnlp pandas
CMD [ "python" , "./lemmatizer.py" ]
Когда я собираю, а затем запускаю Dockerfile, используя следующие команды в соответствии с руководствами в этой ссылке , чтобы использовать службы gpu при создании и развертывание контейнера.
nvidia-docker build -t pylemm-gpu .
docker run -it --gpus all pylemm-gpu
После выполнения всех шагов, описанных выше, я все еще получаю сообщение о том, что мой контейнер использует процессор вместо gpu. Я был бы очень признателен за руководство и / или ссылки для правильной настройки моего контейнера, чтобы он мог использовать gpu.
ps Я пробовал использовать часть использования в ссылке и проверил, что мой сервер имеет 3 gpus.