Pycharm / NVIDIA CUDA: изменение среды выполнения в Docker-контейнере - PullRequest
0 голосов
/ 05 апреля 2019

В настоящее время я занят настройкой среды разработки (pycharm), чтобы я мог использовать docker в этой среде и использовать отладчик. В настоящее время я работаю над нейронной сетью, которая будет работать на GPU.

Если я запускаю свой контейнер с помощью «docker run --runtime = nvidia -it IMAGE-ID» из терминала, а затем запускаю сценарий Python, графический процессор будет распознаваться без проблем. Однако, если я использую ключ выполнения в Pycharm, графический процессор не распознается, и я получаю следующее сообщение об ошибке.

c7184d009d3c: python -u /root/DeepLearning/DeepConvRNN.py ВНИМАНИЕ (theano.sandbox.cuda): бэкэнд CUDA устарел и будет удален в следующем выпуске (v0.10). Пожалуйста, переключитесь на Бэкэнд gpuarray.

ВНИМАНИЕ (theano.sandbox.cuda): CUDA установлена, но gpu устройства недоступно (ошибка: невозможно получить количество доступных gpus: Версия драйвера CUDA недостаточна для версии времени выполнения CUDA) DeprecationWarning: этот модуль устарел в версии 0.18 в в пользу модуля model_selection, в который все переделано классы и функции перемещены. Также обратите внимание, что интерфейс Новые итераторы CV отличаются от этого модуля. Этот модуль будет удален в 0,20. «Этот модуль будет удален в 0.20.», DeprecationWarning) Traceback (последний вызов был последним): Файл "/root/DeepLearning/DeepConvRNN.py", строка 274, в removeNulls = False) RuntimeError: пока не выбрано устройство gpu. Пожалуйста, убедитесь, что GPU Устройство было инициализировано ранее Theano.

Я уже включил удаленный интерпретатор, который указывает на интерпретатор Python в образе докера. Когда я сейчас запускаю скрипт внутри Pycharm, создается новый контейнер, программа выполняется и контейнер удаляется после выхода. До сих пор я мог узнать, что Pycharm запускает контейнер с неверными аргументами. Таким образом, среда выполнения этого контейнера - "runc", а не "nvidia". Теперь я думаю, что это причина, почему GPU не распознается.

К сожалению, Pycharm не предлагает мне передать аргументы при запуске контейнера, потому что он автоматически привязан к удаленному интерпретатору, который указывает на изображение, из которого он создан. Контейнер запускается и останавливается автоматически при выполнении скрипта. Ребята, у вас есть идеи, где я могу передать правильные аргументы в pycharm?

спасибо и всего наилучшего, Alex

ps: этот проект построен на более старом проекте коллеги, поэтому мне нужно работать с python2.7 и более старыми версиями cuda, matplotlib и т. Д.

...