安装tensorflow1.14+GTX1650+CUDA10.1+CUDNN7.6.5+VS2019+Anaconda3遇到的一堆坑

1.安装Anaconda3

下载anaconda3的安装包,可以到清华镜像库下载,也可以官网下载

安装时勾选上第一项,否则需在软件安装完成手动添加环境变量

https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive

 

2.安装 Visual Studio 2019

微软官网直接下载安装

https://my.visualstudio.com/Downloads?q=Visual%20Studio%202019

由于我已经安装Anaconda3,所以安装时不需要选择python模块,有需要的可以选择,选择C++开发模块

 

3.驱动程序下载

选择自己的显卡型号安装最新驱动

https://www.nvidia.cn/Download/index.aspx?lang=cn

 

4.cuda版本下载

https://developer.nvidia.com/cuda-toolkit-archive

安装直接一路默认选择即可

 

5.cuDNN下载

https://developer.nvidia.com/rdp/cudnn-download

(下载CuDNN需要注册账号,注册过程比较简单)

将下载的压缩包解压到cuda的安装路径就可以了

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1

 

6.设置环境变量(找不到dll路径可执行)
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里添加东西。找到系统变量的PATH双击,添加

%CUDA_LIB_PATH%
%CUDA_BIN_PATH%
%CUDA_SDK_LIB_PATH%
%CUDA_SDK_BIN_PATH%
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
(如果PATH里已经有就不用添加)

7.检查是否cuda是否正常

nvidia-smi

nvcc -V

cd C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\extras\demo_suite

执行 bandwidthTest.exe

 

8.测试cuda跟cuDNN是否匹配

测试方法:

进入C:\ProgramData\NVIDIA Corporation\CUDA Samples\v10.1

运行你电脑中Visual Studio对应版本的sln文件,我电脑里装的是VS2019,打开Samples_vs2019.sln

运行成功显示返回值为0

9.创建conda环境

打开Anaconda Promopt 输入

conda create -n tensorflow python=3.7

conda activate tensorflow

 

10.安装tensorflow1.14

pip install tensorflow-gpu==1.14

第一次提示tensorboard版本与setuptools版本不对应,执行pip install --ignore-installed --upgrade setuptools后规避

第二次安装失败了提示拒绝访问,需要增加--user参数,再次执行pip install --ignore-installed --user --upgrade tensorflow-gpu==1.14 后成功

11.测试是否可用

import tensorflow as tf

sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))

第一次提示Could not load dynamic library ‘cudart64_100.dll’; dlerror: cudart64_100.dll not found

将报错中C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin下的cudart64_101.dll等文件复制一份后改名为对应报错的dll即可解决

最终结果如图