首先 import tensorflow是没有报错的
执行如下代码查看可调用的设备列表是否包含gpu:
from tensorflow.python.client import device_lib
print(device_lib.list_local_devices())
报错一大堆:
2020-09-08 18:48:21.805969: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Could not load dynamic library 'cudart64_100.dll'; dlerror: cublas64_100.dll not found
2020-09-08 18:48:21.807845: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library 'cublas64_100.dll'; dlerror: cublas64_100.dll not found
2020-09-08 18:48:21.809707: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library 'cufft64_100.dll'; dlerror: cufft64_100.dll not found
2020-09-08 18:48:21.811310: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library 'curand64_100.dll'; dlerror: curand64_100.dll not found
...
看似我一切准备就绪(tensorflow-gpu1.15、CUDA10.0、CUDNN7.6一路过关斩将),结果陪我的仍旧只有CPU
刚开始以为是缺少这些.dll(貌似叫动态链接库文件),可我在电脑CUDA安装路径\bin下,发现dll文件非常的齐全
至此,怀疑是环境变量配置失败,反复反复反复检查后又陷入自闭模式...
查了度娘,被告知环境变量似乎不支持dll文件(凭什么只伤害我!!)
Fine,我用cmd测试一下,果然同目录下的.exe文件可以完美找到
最后找到了解决办法:
手动将所有.dll文件复制到C:\Windows\System下
配置环境出错实在是痛苦,害,又浪费半个下午,可得记下来!