我在python 3.7.4中安装了带有Anaconda的tensorflow-gpu版本2.2.0,但是我的代码始终在CPU上运行,并且无法检测到我的GPU。
physical_devices= tf.config.experimental.list_physical_devices('GPU')
print(len(physical_devices))
>>> 0
运行此命令时:
from tensorflow.python.client import device_lib
print(device_lib.list_local_devices())
我得到:
[name: "/device:CPU:0"
device_type: "CPU"
memory_limit: 268435456
locality {
}
incarnation: 6159543114609950707
, name: "/device:XLA_CPU:0"
device_type: "XLA_CPU"
memory_limit: 17179869184
locality {
}
incarnation: 4043157374881641271
physical_device_desc: "device: XLA_CPU device"
, name: "/device:XLA_GPU:0"
device_type: "XLA_GPU"
memory_limit: 17179869184
locality {
}
incarnation: 1519736160969870434
physical_device_desc: "device: XLA_GPU device"
]
XLA_GPU:0对应于在CPU上运行的集成图形,因为我已经测试过使用tf.device('/ GPU:0'):在下运行代码,并且任务管理器仅显示CPU使用率。
我在NVIDIA控制面板->系统信息->组件中进行了检查,在3D设置下,我将NVCUDA64.dll描述为NVIDIA CUDA 11.0.208驱动程序。
到目前为止,我还没有尝试过重新安装tensorflow-gpu,因为之前可能还需要做其他事情。
答案 0 :(得分:2)
我不认为11.0可以在tensorflow中使用。您需要10.1。我有一个RTX2070,适用的驱动程序版本是432.00。转到NVIDIA网站并尝试查找10.1兼容驱动程序并进行安装。如果您使用CONDA安装tensorflow,那么它应该已经安装了10.1 CUDA工具包和兼容版本的Cudnn。
答案 1 :(得分:1)
我自己的答案。终于奏效了:
我必须先下载CUDA 10.1,然后再下载该版本的cuDNN 7.6.5。
感谢@Gerry P和@Richard X