前言:
安装这个东西,折腾了大半天,查阅了很多资料。但最终还是安装成功了,并记录下来。希望给大家一些借鉴,顺利完成安装。整个安装过程需要很强的版本控制。显卡驱动==>CUDA<==>cuDAA<==>tensorflow_gpu==>keras 1、我安装的版本为(自测可用):
python:3.6.6tensorflow_gpu:2.1.0CUDA:10.1cuDAA:7.6.5keras:2.3.0推荐版本系列(这是我在tensorflow官网论坛上找的截图):
2、要用tensorflow-gpu得看自己的电脑是否支持: 然后用谷歌搜索“你的GPU型号+SPECIFICATION”,在官网查它是否支持CUDA。GPU型号文章末端,可知。我的是:GeForce GTX 1050。搜索结果:
第一步: 那怎样知道自己的版本呢: 去tensorflow官网找答案: 因为,官网的url地址可能会改变,所以下面我只把相对地址截图下:
我安装的tensorflow是2.1.0,如图:
第二步: 用pip安装tensorflow_gpu指定版本,并使用清华镜像源加速下载:
pip install tensorflow-gpu==2.1.0 -i https://pypi.tuna.tsinghua.edu.cn/simple如果在最后的安装阶段,报Consider using the --user option or check the permissions.错误。这可能是因为你的python没装在C盘,请在命令上加上__user
pip install --user tensorflow-gpu==2.1.0 -i https://pypi.tuna.tsinghua.edu.cn/simple第三步: CUDA(10.1)安装配置:
CUDA各版本的下载地址(官网): 由第一步可知,我下载的是10.1:
找到我下载的CRUA.exe可执行程序,进行自定义安装: 一直默认目录(最好不要更改),自定义选择如下: 如上图所示,我们只需选择CUDA下面这4项就够了(默认是全选的。。。),visual studio integration这一项没有勾选是因为我并没有使用VS环境。这一步之后,会询问这些组件的安装路径,可以直接使用C盘的默认位置,当然我自定义了一下(还是那句话,我不建议)。 安装完成后,如果没有更改目录会在C:\Program Files和C:\ProgramData中生产CUDA文件。 打开cmd,输入nvCC -V: 得到上图,说明安装成功。
第四步: cuDNN(7.6.5)(有时候下载cuDNN需要先注册登录,但你多登录几次就可以直接下载了) 各版本的下载地址:
下载好对应的包后,解压得到下面目录:
将上图bin、include、lib里面的文件复制一份到下面的目录下对应的bin、include、lib文件夹中。 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1
第五步: 接下来设置环境变量: 打开属性->高级系统设置->环境变量, 可以看到系统中多了CUDA_PATH和CUDA_PATH_V10_1两个环境变量,接下来,还要在系统中添加以下几个环境变量: CUDA_SDK_PATH = C:\ProgramData\NVIDIA Corporation\CUDA Samples\v10.1 CUDA_LIB_PATH = %CUDA_PATH%\lib\x64 CUDA_BIN_PATH = %CUDA_PATH%\bin CUDA_SDK_BIN_PATH = %CUDA_SDK_PATH%\bin\win64 CUDA_SDK_LIB_PATH = %CUDA_SDK_PATH%\common\lib\x64 我的截图:
然后:
在系统变量 PATH 的末尾添加: %CUDA_LIB_PATH%;%CUDA_BIN_PATH%;%CUDA_SDK_LIB_PATH%;%CUDA_SDK_BIN_PATH%; 再添加如下4条(默认安装路径): C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\lib\x64; C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin; C:\ProgramData\NVIDIA Corporation\CUDA Samples\v10.1\common\lib\x64; C:\ProgramData\NVIDIA Corporation\CUDA Samples\v10.1\bin\win64; 我的截图:
配置完成后,我们可以验证是否配置成功,主要使用CUDA内置的deviceQuery.exe 和 bandwithTest.exe: cmd,cd到安装目录下的 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\extras\demo_suite 也可以点击上图所示的导航栏,直接输入cmd,自动定位到demo_suite目录下。 然后分别执行bandwidthTest.exe和deviceQuery.exe,应该得到下图: 如果以上两步都返回了Result=PASS,那么就算成功啦。 但是,当时我却出现了这种情况:
C:\Users\DELL>cd C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\extras\demo_suite C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\extras\demo_suite>deviceQuery.exe deviceQuery.exe Starting... CUDA Device Query (Runtime API) version (CUDART static linking) cudaGetDeviceCount returned 35 -> CUDA driver version is insufficient for CUDA runtime version Result = FAIL C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\extras\demo_suite>bandwidthTest.exe [CUDA Bandwidth Test] - Starting... Running on... cudaGetDeviceProperties returned 35 -> CUDA driver version is insufficient for CUDA runtime version CUDA error at C:/dvs/p4/build/sw/rel/gpgpu/toolkit/r10.1/demo_suite/bandwidthTest/bandwidthTest.cu:255 code=35(cudaErrorInsufficientDriver) "cudaSetDevice(currentDevice)" C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\extras\demo_suite>这句话: CUDA driver version is insufficient for CUDA runtime version。 很明显,自己的显卡驱动版本与CUDA版本不匹配,应该是我的CUDA10.1太高了。查阅资料知道可以升级自己的显卡驱动来解决。有二种方式(我用的是第一种): 1、设备管理器==》 显示适配器: 更新驱动程序即可。 2、 查看自己的显卡信息:
nvidia-smi自动更新驱动程序(官方下载)
下载类别GRD/SD 根据自己的显卡,选择驱动,下载更新。
参考于: https://blog.csdn.net/u010618587/article/details/82940528 https://zhuanlan.zhihu.com/p/37086409