Tensorflow:CUDA_VISIBLE_DEVICES似乎不起作用

时间:2016-11-21 17:31:06

标签: cuda tensorflow gpu

当我使用CUDA_VISIBLE_DEVICES=2运行我的python脚本时,Tensorflow仍会显示以下内容:

  

I tensorflow / core / common_runtime / gpu / gpu_device.cc:1041]正在创建   TensorFlow设备(/ gpu:0) - > (设备:0,名称:特斯拉K80,pci总线ID:   0000:86:00.0)

因此,我的代码失败并显示以下消息:

  

无法满足明确的设备规范' / device:GPU:2'   因为没有在此注册符合该规范的设备   处理;可用设备:/ job:localhost / replica:0 / task:0 / cpu:0,   /作业:本地主机/复制:0 /任务:0 / GPU:0

有人可以解释一下必须发生什么吗?

1 个答案:

答案 0 :(得分:10)

引用CUDA_VISIBLE_DEVICES的解释:

  

CUDA将枚举从零开始的可见设备。在最后   例如,设备0,2,3将显示为设备0,1,2。

所以如果你做CUDA_VISIBLE_DEVICES=2,那么你的gpu#2将在张量流中表示为gpu:0