pycharm / nvidia cuda:更改Docker容器中的运行时环境

时间:2019-04-05 13:28:40

标签: python docker deep-learning pycharm theano-cuda

我目前正在忙于配置开发环境(pycharm),以便可以在环境中使用docker并使用调试器。我目前正在研究将在GPU上运行的神经网络。

如果我从终端使用“ docker run --runtime = nvidia -it IMAGE-ID”启动容器,然后运行我的Python脚本,则GPU将被识别而没有问题。但是,如果我在Pycharm中使用execute键,则无法识别GPU,并且收到以下错误消息。

  

c7184d009d3c:python -u / root /DeepLearning/DeepConvRNN.py   警告(theano.sandbox.cuda):cuda后端已弃用,并且   在下一个版本(v0.10)中将被删除。请切换到   gpuarray后端。

     

警告(theano.sandbox.cuda):已安装CUDA,但已安装设备gpu   不可用(错误:无法获取可用的GPU数量:   CUDA驱动程序版本不足以用于CUDA运行时版本)   弃用警告:此模块在版本0.18中已弃用   支持将所有重构到的model_selection模块   类和函数被移动。另请注意,   新的CV迭代器与此模块的迭代器不同。这个模块   将在0.20中删除。   “此模块将从0.20中删除。”,不推荐使用警告)   追溯(最近一次通话):   文件“ /root/DeepLearning/DeepConvRNN.py”,行274,在   removeNulls = False)   RuntimeError:尚未选择gpu设备。请确保GPU   该设备之前是由Theano初始化的。

我已经在docker镜像中包含了一个指向Python解释器的远程解释器。现在,我在Pycharm中启动脚本时,将实例化一个新容器,执行程序,并在退出后删除该容器。到目前为止,我能发现的是Pycharm用错误的参数启动了容器。因此,此容器的运行时环境是“ runc”,而不是“ nvidia”。我现在的猜测是,这就是无法识别gpu的原因。

不幸的是,Pycharm没有为我提供启动容器时传递参数的选项,因为它自动绑定到远程解释器,该解释器指向从其实例化的图像。执行脚本时,容器会自动启动和停止。你们知道我可以在pycharm中传递正确的参数吗?

感谢和问候, 亚历克斯

ps:此项目是基于同事的较旧项目构建的,因此我需要使用python2.7和较旧版本的cuda,matplotlib等。.

0 个答案:

没有答案