Tensorflow:CUDA_VISIBLE_DEVICES似乎不起作用

use*_*878 4 cuda gpu tensorflow

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

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

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

无法满足显式设备规范'/ device:GPU:2',因为在此过程中没有注册与该规范匹配的设备; 可用设备:/ job:localhost/replica:0/task:0/cpu:0,/ job:localhost/replica:0/task:0/gpu:0

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

syg*_*ygi 10

引用CUDA_VISIBLE_DEVICES的解释:

CUDA将枚举从零开始的可见设备.在最后一种情况下,设备0,2,3将显示为设备0,1,2.

所以,如果你这样做CUDA_VISIBLE_DEVICES=2,那么你的gpu#2将表示为gpu:0内部张量流.