“使用USE_CUDA = 1进行编译以启用GPU使用”在AWS深度学习AMI上使用MXNet发送消息

时间:2017-10-25 16:29:10

标签: amazon-web-services machine-learning amazon-ec2 deep-learning mxnet

我想训练一个神经网络,同时使用MXNet在我的g2.8xarge EC2实例上使用所有4个GPU。我正在使用以下AWS Deep Learning Linux社区AMI:

深度学习AMI亚马逊Linux - 3.3_Oct2017 - ami-999844e0)

根据这些instructions,当我连接到实例时,我通过发出以下命令切换到带有MXNet后端的keras v1:

source ~/src/anaconda3/bin/activate keras1.2_p2

我还在我的python模型编译代码中添加了上下文标志,以便在MXNet中使用GPU:

model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'], context=gpu_list)

其中gpu_list意味着使用所有4个GPU。

但是每次运行我的代码时,都会收到以下错误消息:

  

大纪元1/300   [15:09:52] /home/travis/build/dmlc/mxnet-distro/mxnet-build/dmlc-core/include/dmlc/logging.h:308:[15:09:52] src / storage / storage .cc:113:使用USE_CUDA = 1编译以启用GPU使用

  

RuntimeError:simple_bind错误。参数:   dense_input_1:(25,34L)   [15:09:52] src / storage / storage.cc:113:使用USE_CUDA = 1编译以启用GPU使用

我检查了/ home / ec2-user / src / mxnet中的config.mk文件,它包含USE_CUDA = 1。我还发出了'made'命令来尝试使用USE_CUDA = 1标志重新编译MXNet - 没有变化。

我是否遇到此问题,因为我正在使用AWS文档说要使用的虚拟环境?有没有其他人在使用此虚拟环境的AWS深度学习Ubuntu AMI上遇到MXNet这个问题?

非常感谢任何建议 -

1 个答案:

答案 0 :(得分:3)

这是因为Keras Conda环境依赖于mxnet cpu pip包。您可以使用以下命令在Conda环境中安装gpu版本:

pip install mxnet-cu80