一开始我只装了tensorflow,没有装tensorflow-gpu,先pip install 安装一下tensorflow-gpu
pip install tensorflow-gpu==1.15.0 -i https://pypi.doubanio.com/simple/
血与泪的教训告诉我不要装高版本的比如tensorflow2以及低版本的比如1.10
然后python命令行输入
import tensorflow as tf
tf.__version__
如果显示的是tensorflow-gpu的版本而不是tensorflow就行(tensorflow-gpu的版本需要高于tensorflow,python默认使用版本更高的tensorflow,所以可以用anaconda创建新环境更方便一点)
1.安装CUDA
CUDA下载地址:https://developer.nvidia.com/cuda-downloads
CUDA历史版本:https://developer.nvidia.com/cuda-toolkit-archive
安装直接选择精简模式就行(全家桶模式),解压路径随意,安装路径建议默认就好
然后下载cuDNN:https://developer.nvidia.com/cudnn,把下载的文件解压后拷贝到CUDA安装目录对应文件夹即可
然后配置环境变量:
CUDA_PATH = C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2
CUDA_SDK_PATH = C:\ProgramData\NVIDIA Corporation\CUDA Samples\v10.2
path添加
%CUDA_PATH%
%CUDA_PATH%\lib\x64
%CUDA_PATH%\bin
%CUDA_SDK_PATH%
%CUDA_SDK_PATH%\bin\win64
%CUDA_SDK_PATH%\common\lib\x64
进入命令行窗口,进入路径C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\extras\demo_suite,或者先进入路径,再在路径栏输入cmd进入命令行窗口,输入bandwidthTest.exe和deviceQuery.exe检查是否安装成功(Result=PASS则安装成功)
然后进入Python运行import tensorflow,然后报错
Could not load dynamic library ‘cudart64_100.dll’; dlerror: cudart64_100.dll not found
下载了一个别人的cuart64_100到CUAD安装目录的bin文件夹下,再次运行未报错
文件下载链接:https://pan.baidu.com/s/1t0rog1mT-wR_5PlvCEQswQ,提取码:ch3z
然后继续运行:
from tensorflow.python.client import device_lib
print(device_lib.list_local_devices())
然后报错:
tensorflow.python.framework.errors_impl.InternalError: cudaGetDevice() failed. Status: cudaGetErrorString symbol not found.
网上查找原因,是cuda10.0需要的Driver Version版本不对应导致的
大概就是先看下NVDIA控制面板,版本441.22就是本机Driver的版本
参考博客:https://www.cnblogs.com/cupwwj/p/11715076.html
最后python输入
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: 7625146426687586135
, name: "/device:GPU:0"
device_type: "GPU"
memory_limit: 3141979340
locality {
bus_id: 1
links {
}
}
incarnation: 16536461316338165439
physical_device_desc: "device: 0, name: GeForce GTX 1050 Ti, pci bus id: 0000:01:00.0, compute capability: 6.1"
最后在py文件指定GPU
import os
os.environ['CUDA_VISIBLE_DEVICES']='1'