折腾了好几天终于在新电脑上实现了keras代码自动调用GPU,发现之前失败的主要原因在于各版本对应关系实在太过严苛,故将成功版本记录如下:
系统:win10
python安装方式:Anaconda3 安装的是python3.6.4。
具体版本为:Anaconda3-5.1.0-Windows-x86_64.exe
下载地址:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
安装教程:https://mp.csdn.net/postedit/80607252
IDE为:pycharm
接下来是cuda安装:先装VS2015 再装Cuda 最后装cudnn,版本如下:
CUDA版本:cuda_9.0.176_win10.exe
cudnn版本:cudnn-9.0-windows10-x64-v7.3.0.29.zip
下载地址:https://mp.csdn.net/postedit/85242970
安装教程:借鉴https://jingyan.baidu.com/article/b24f6c821a2f8b86bfe5da19.html
https://mp.csdn.net/postedit/86160632
接着如果要执行keras代码,我是以tensorflow作为后端,而不是theano; 为了运行在gpu上,安装tensorflow-gpu,但是不要通过pip install tensorflow-gpu,因为版本一般和CUDA不匹配。
在这里 https://pypi.org/project/tensorflow-gpu/1.12.0/#files下载tensorflow_gpu-1.12.0-cp36-cp36m-win_amd64.whl (80.0 MB)
要不要翻墙我不知道,反正我翻了。用pip install +(将上面下载的whl文件拖进来,回车安装)。
然后同时需要安装tensorflow,在这里 https://pypi.org/project/tensorflow/1.12.0/#files下载tensorflow-1.12.0-cp36-cp36m-win_amd64.whl,用同样的方式安装。
然后安装tensorboard ,在这里 https://pypi.org/project/tensorboard/1.12.0/下载tensorboard-1.12.0-py3-none-any.whl,安装。
然后我的keras就可以自动检测到GPU并运行了,你的如果不行,再找找别的原因,这组版本组合关系应该没啥问题。