首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TensorFlow多GPU InvalidArgumentError : cifar10_multi_gpu.py

TensorFlow多GPU InvalidArgumentError : cifar10_multi_gpu.py
EN

Stack Overflow用户
提问于 2017-08-12 08:45:17
回答 1查看 459关注 0票数 1

我试着用多个GPUS训练我的模型。所以我运行cifar10_multi_gpu.py (train.py)。

1.我的位置:

操作系统平台: Linux版本3.10.0-327.el7.x86_64

安装: pip安装-升级./tensorflow_gpu-1.0.0rc0-cp35-cp35m-linux_x86_64.whl

Python版本:Python3.5.2

CUDA/cuDNN版本: cuda_8.0.61_375.26_linux.run /cudnn-8.0-Linux64-v5.1.tgz

2. GPU设置是正确的

将tensorflow作为tf导入 使用tf.device('/cpu:0'): A= tf.constant(1.0,2.0,3.0,shape=3,name='a') b= tf.constant(1.0,2.0,3.0,shape=3,name='b')和tf.device('/gpu:1'): C=a+b 塞斯= tf.Session(config=tf.ConfigProto(log_device_placement=True)) sess.run(c) 添加:(添加):/作业:本地主机/副本:0/任务:0/gpu:1 i tensorflow/core/common_runtime/simple_placer.cc:841]添加:(添加)/作业:localhost/副本:0/任务:0/gpu:1b:(Const):/作业:localhost/复制品:0/任务:0/cpu:0 tensorflow/core/common_runtime/simple_placer.cc:841] b:(Const)/作业:localhost/副本:0/任务:0/cpu:0 a:(Const):/作业:localhost/tensorflow/core/common_runtime/simple_placer.cc:841]:0/task:0/cpu:0 tensorflow/core/common_runtime/simple_placer.cc:841] a:(Const)/作业:localhost/tensorflow/core/common_runtime/simple_placer.cc:841]:0/任务:0/cpu:0 数组( 2.,4.,6.,dtype=float32)

3. InvalidArgumentError: python cifar10_multi_gpu.py

我tensorflow/core/common_runtime/simple_placer.cc:669]忽略了节点‘to _0/fifo_queue_Dequeue’的设备规范/GPU:0,因为来自'prefetch_queue/fifo_queue‘的输入边是一个引用连接,并且已经有一个设备字段设置为/CPU:0回溯(最近一次调用):在_do_call返回fn(*args)中,文件"/home/xx/anaconda3/lib/python3.5/site-packages/tensorflow/python/client/session.py",行1022 文件"/home/xx/anaconda3/lib/python3.5/site-packages/tensorflow/python/client/session.py",第1000行,在_run_fn self._extend_graph()中 文件"/home/xx/anaconda3/lib/python3.5/site-packages/tensorflow/python/client/session.py",第1049行,在_extend_graph self._session,graph_def.SerializeToString(),status中 文件"/home/xx/anaconda3/lib/python3.5/contextlib.py",第66行,在exit next(self.gen)中 文件"/home/xx/anaconda3/lib/python3.5/site-packages/tensorflow/python/framework/errors_impl.py",第469行,在raise_exception_on_not_ok_status pywrap_tensorflow.TF_GetCode(状态)中) tensorflow.python.framework.errors_impl.InvalidArgumentError:无法将设备分配给节点‘tower_0/softmax_linear_linear_1’:无法满足显式设备规范/设备: GPU :0‘,因为没有支持的GPU设备内核。 [节点:塔塔_0/软极_线性/重量_损耗_1=ScalarSummarydevice="/device:GPU:0"] 在处理上述异常的过程中,发生了另一个异常: 回溯(最近一次调用):文件"cifar10_multi_gpu_train.py",第280行,tf.app.run() tf.app.run()文件第44行,运行_sys.exit(main(_sys.argv:1 + flags_passthrough)) 文件"cifar10_multi_gpu_train.py",第276行,在主列车() 文件"cifar10_multi_gpu_train.py",第237行,in sess.run(init) 文件"/home/xx/anaconda3/lib/python3.5/site-packages/tensorflow/python/client/session.py",第767行,在运行run_metadata_ptr中) 文件"/home/xx/anaconda3/lib/python3.5/site-packages/tensorflow/python/client/session.py",第965行,在_run feed_dict_string,options,run_metadata中) 文件"/home/xx/anaconda3/lib/python3.5/site-packages/tensorflow/python/client/session.py",第1015行,在_do_run target_list,options,run_metadata中) 文件"/home/xx/anaconda3/lib/python3.5/site-packages/tensorflow/python/client/session.py",行1035,在_do_call提升类型(E)中(node_def,op,message) tensorflow.python.framework.errors_impl.InvalidArgumentError:无法将设备分配给节点‘tower_0/softmax_linear_linear_1’:无法满足显式设备规范/设备: GPU :0‘,因为没有支持的GPU设备内核。 [节点:塔塔_0/软极_线性/重量_损耗_1=ScalarSummarydevice="/device:GPU:0"]

我尝试了许多解决方案,但都失败了。谢谢你事先给我的建议。

EN

回答 1

Stack Overflow用户

发布于 2017-08-14 17:27:03

抱歉你碰到问题了!我与该脚本的原始作者之一进行了核对,他的回答如下:

看上去设备的放置不太好。

  • 根据提交人的测试,他检查了查看是否可以访问"cpu:0“和"gpu:1”,但他从未检查过"gpu:0“。我会查一下的。
  • 作者还应该将allow_soft_placement=True设置在SessionConfig中,以便允许轻松放置设备。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45648322

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档