安装思路
一般的教程都是先装cuda再装tensorflow/pytrch/keras,但是这样很容易造成版本不匹配!! 先确定tensorflow版本,由tf确定需要的cuda版本及cudnn版本,在去查看显卡驱动支不支持该cuda,不支持的话升级驱动。
由tensorfow确定cudn版本的方法:
安装tensorflow-gpu,安装完成后,import tensorflow,会报错,错误会提示,需要安装什么版本的cuda,如图:
截止2019-08-15,推荐直接pip install tensorflow安装tf1.14版本,配cuda10.0
安装默认已经装好了anaconda,使用anaconda prompt执行命令。
1、安装tensorflow
官网推荐创建虚拟环境:conda create -n tensorflow 进入虚拟环境:activate tensorflow pip install tensorflow-gpu 该命令是默认安装最新版本的tf,2019-08-15时,安装的是1.14版本,对应cuda是10.0。
2、查看驱动支持版本
先打开nVidia控制面板-帮助-系统信息-组件里面能看到支持的最新的cudn的版本
如果需要更新驱动,假如你的GPU卡是GeForce序列的,到https://www.geforce.com/drivers按你的机器的GPU卡的类型搜索对应的最新的driver,下载并安装即可,其他序列的去NVIDIA中国网页https://www.nvidia.cn/Download/index.aspx?lang=cn上按卡类型搜索最新的driver安装程序。
3、安装CUDA
去该网站上选择合适的版本
https://developer.nvidia.com/cuda-toolkit-archive
这是Windows10-64位本地exe程序安装
然后下载
然后直接安装就行安装完成之后,下一步需要配置环境变量。
如果安装成功,系统变量会多出两个为
还需要自己添加几个系统变量
CUDA_SDK_PATH = C:\ProgramData\NVIDIA Corporation\CUDA Samples\v10.0(这是默认安装位置的路径,如果自己路径设置安装成功的话就用自己的路径)
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.0\lib\x64 这些均为默认路径,有需要的话自行修改
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\bin
C:\ProgramData\NVIDIA Corporation\CUDA Samples\v10.0\common\lib\x64
C:\ProgramData\NVIDIA Corporation\CUDA Samples\v10.0\bin\win64
添加完之后CUDA就算安装完成了。我们可以检验是否安装成功。
打开CMD,cd到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\extras\demo_suite (这是默认路径)
分别执行命令:bandwidthTest.exe
deviceQuery.exe
若分别返回
则代表CUDA9.0安装成功。
4、Cudnn安装
Cudnn的下载需要登录,自己注册一个账号 下载地址:https://developer.nvidia.com/rdp/cudnn-download 下载下来是一个压缩包,里面是三个文件夹,里面各有一个文件
如果第一步安装CUDA没有修改安装路径,执行以下操作:
①复制 cudnn\bin\cudnn64_5.dll 到 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin ②复制 cudnn\include\cudnn.h 到 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\include ③复制 cudnn\lib\x64\cudnn.lib 到 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\lib\x64\
5、出现的问题:
1)ERROR:twisted 18.7.0 requires PyHamcrest>=1.9.0 ,which is not install
a) 下载对应的Twisted,下载地址:https://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted
b) 2.通过Anaconda3的Anaconda Prompt进行安装
c) 3.具体步骤: cd 下载的文件地址,如本人的:cd F:\下载, pip install Twisted-19.2.1-cp37-cp37m-win_amd64.whl
2)cannot uninstall wrapt. it is a distutils installed project and thus
解决方案: pip install -U --ignore-installed wrapt enum34 simplejson netaddr
参考:
3)执行import tensorflow时会报如下错误:
FutureWarning: Passing (type, 1) or ‘1type’ as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / ‘(1,)type’. np_resource = np.dtype([(“resource”, np.ubyte, 1)])
因为numpy的版本过高1.17版本,执行:
pip uninstall numpy
pip install numpy==1.16
6、pytorch安装
安装确定好cuda+cudnn的版本之后,进入pytorch的官网,后选择系统、py版本等,就直接在pip安装就ok了,比TF简单多了~
我用conda安装遇到了这个问题,但是该目录下是有这个dll的。
7 Keras安装
因为keras是以tensorflow为后台的,所以安装好tensorflow之后,直接pip install keras即可安装成功。
注意!!!
注:这里使用pip安装而不是使用conda,原因是使用conda安装会默认安装cpu版本的tensorflow,如下图所示:
使用conda安装会提示安装其他依赖包,如下图所示;这其中就包括cpu版本的tensorflow,这是我们不想要的。 所以千万不要使用conda命令安装keras,说起来都是泪。。。