问题描述
网上已经很多关于配置CUDA的文章,自己这篇文章只是个大致的安装步骤,文章重点是安装和配置的一些细节,而至于具体的步骤(比如软件怎么下,环境变量怎么配等)请自行搜索,我相信大家也不会只参考一篇文章,如有指正或疑问请评论留言,谢谢!
- 安装 tensorflow-cpu
- 安装 tensorflow-gpu-2.0,并配置 CUDA
- 编译 Nvidia Samples
- 环境:Win10;GPU--Nvidia 940MX
安装 tensorflow-cpu-2.0
- 安装 anaconda
- 如果认为 anaconda 较大,可安装 miniconda;
- win10 下需要特别注意环境变量的配置
- 激活 conda 环境
- 建议新建一个环境,如
conda create -n env_name python=3.7
。 - 新环境的 python 版本和要安装的 tensorflow 的版本是相关的,所以如果要安装最新版的 tensorflow-2.0,需要使用 python3.7 及以上。
- pip 的更新和换源自行搜索即可。Linux 的 pip 更新见自己的另一篇文章。
- 建议新建一个环境,如
- 安装 tensorflow-2.0
- 最简单的安装方法是使用 pip 安装。这样的问题是:使用的时候会有 AVX Warning,原因是:pip 方法会提供的适配性最高的安装包,但是当前 CPU 支持更高效的 tensorflow 使用方式(AVX),所以才会有这个 Warning
- 解决方案是下载官方 tensorflow 的源码,重新编译。当然网上也提供了编译好了的版本,自行搜索下载,安装即可。
- 检测是否安装成功
- 可以在 python 中输入以下代码,能正常运行即可
import tensorflow as tf a = tf.constant(1) b = tf.add(a, a) print(b)
安装 tensorflow-gpu-2.0
- 系统检查
- 电脑必须带N卡,且安装了驱动。建议安装最新的N卡驱动,这样做的原因是支持的CUDA的版本也相应的较高。
- 打开系统的 Nvidia控制面板,点击左下角 系统信息 -- 组件 -- NVCUDA.DLL,自己的是 NVIDIA CUDA 10.2.115 driver. 这代表着 最高的CUDA版本是 10.2.115
- 软件准备
- 按照查到的这个版本,搜索下载CUDA。不过当时自己安装的时候,为了稳定性考虑,使用的是 CUDA10.0,所以请根据自身情况合理考虑。
- 下载 CUDNN。这个需要使用 Nvidia 的账号。请注意:CUDNN 和 CUDA 是匹配的,一定要下载对应的最新版本。比如 V7.6.6 和 V7.6.4 都是 CUDA10.0 的CUDNN,那么选择第一个。
- 自己第一遍安装的时候是按照其他文章所言的“版本对应”,但是测试的时候
import tensorflow
报错,找不到 cudnn64_7.dll文件 。如果你在之后的测试中也是这个错误,请考虑是不是 CUDNN 的版本错了,或者是CUDNN的安装位置错了。
- 安装 CUDA & CUDNN
- 选择 自定义安装 ;如果不想安装在 C盘,但是为了以后使用方便,可以在D盘等其他位置新建相应目录,比如:
D:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0
- 如果没有刚需,像是 NVDIA PHYSX,NVIDIA GEFORCE EXPERIENCE这样的软件没有必要安装;其中VS Integration 不要勾选,NVIDIA 驱动也不要勾选,因为我们已经安装好了驱动。
- 将 CUDNN 复制到相应的 CUDA 安装文件位置。
- 配置环境变量,测试CUDA是否安装成功等善后工作相信你也能在其他文章见到。
- 选择 自定义安装 ;如果不想安装在 C盘,但是为了以后使用方便,可以在D盘等其他位置新建相应目录,比如:
- 在 conda 环境中安装 tensorflow-gpu 版本,测试能否使用 N卡计算
编译 Nvidia Samples
- 安装 VS2017,安装中注意选择安装 Windows 10 SDK(10.0.15063)
- 最重要的一步 使用解压缩软件打开 CUDA 的安装程序,解压 MSBuildExtensions 这个文件夹出来(这就是上一步没有选择安装 vs integration的原因),将这个文件夹下的文件复制到 vs2017 的安装目录,自己的是
D:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\BuildCustomizations
- 打开 Samples_vs2017.sln,可以在项目上右键--生成,如果报错可查看10.0.15063这个 SDK 版本是否安装成功。生成成功的解决方案(.exe文件)可以在 ..\Samples\V10.0\bin\win64\Debug 这个文件夹下查看
相关资源和其他问题
- 关于 AVX 问题,大家可以在这个站点上下载到对应的 .whl 文件,使用 pip install xxx.whl 即可安装。请注意:这个站点的安装包对于 CUDA 和 CUDNN 的版本是有规定的,一定要对应好!网页链接