由于很多同学需要使用Windows系统进行GPU上的计算,比如运行TensorFlow或者Pytorch等,在Windows上正确安装CUDA和CUDNN则成了一个关键的问题。与在Linux上安装的整体流程类似,但是还有一些细节要注意,本文以Windows 10系统为例,进行CUDA环境的安装,并以TensorFlow验证安装的成功。
注:Windows下 TensorFlow的GPU版本最多支持到2.10版本,2.11及以后版本仅支持CPU,如果运行 tf.test.is_gpu_available() 是 False的话,需要注意是否是这种情况。
1 安装最新版Microsoft Visual Studio
看到这里很多人可能会问,就写个Python程序为什么要装vs软件。其实这是因为,我们需要给我们的计算机安装Windows系统上包括最新版在内的几个版本的C++编译器和运行环境。不同于Linux系统,一个崭新的Windows系统并不包含这些软件,所以很多安装TensorFlow GPU版的同学发现安装之后,运行时报错:“ImportError: DLL load failed: 找不到指定的程序”。我们从TensorFlow官方的文档 ( https://www.tensorflow.org/install/source_windows ) 中就可以看到对编译器版本的要求这一点:
而这个问题正是网上很多教程不曾写到的,也是最令人困扰的一点。
我们需要打开微软Visual Studio的官方网站:https://visualstudio.microsoft.com/zh-hans/ 下载并安装最新版Visual Studio,安装时必须勾选“使用C++的桌面开发”,其他选项可根据自己实际需要勾选。
2 查看本机的CUDA驱动适配版本
在桌面右键“NVIDIA控制面板”,点击帮助->系统信息->组件。
在打开的窗口中,我们可以看到本机当前最高支持的CUDA版本是10.2。如果你升级了驱动,将来也可能会支持更高版本。
3 下载CUDA和cuDNN
CUDA下载页面:https://developer.nvidia.com/cuda-downloads
如果需要选择CUDA版本,可从这里打开:https://developer.nvidia.com/cuda-toolkit-archive
下载cuDNN时必须选择和你安装的CUDA匹配的版本,下载页面:https://developer.nvidia.com/rdp/cudnn-download
下载cuDNN是需要登录英伟达开发者账户的,如果没有的话,需要注册一个并填写问卷,很简单。注册并登录后,即可打开如下页面,选择对应的文件并下载。
4 安装CUDA和cuDNN
安装CUDA时很简单,跟我们平时装一个软件一样,这里不再赘述。CUDA安装完成后,打开powershell,执行nvcc -V ,成功的话会返回cuda版本号。
安装cuDNN首先需要解压cuDNN压缩包,可以看到有bin、include、lib目录。
打开 “C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA” 目录,找到你安装的版本目录,打开,找到bin、include、lib目录,将cuDNN压缩包内对应目录下的文件分别复制到bin、include、lib目录。如果是新版Windows 10系统,可以直接复制三个目录到对应路径下,两处的目录会自动合并,不会出现目录级的覆盖,最多只会覆盖同名文件。如果是其他版本系统,为了以防万一,最好还是手动一一复制到对应路径下。
5 添加环境变量
我们需要在系统环境变量的Path项下添加几个路径,点击 编辑 — > 新建、浏览,选择刚才的安装路径。
需要添加的默认的安装路径如下:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\lib\x64
如果有安装到别处,请参考这两个路径来填写。
6 检查安装结果
在任意路径下打开powershell终端,比如在桌面处按住Shift键,鼠标右键,选择“在此处打开Powershell窗口”。然后输入:“nvidia-smi”,如果出现类似如下信息,则表明CUDA安装成功。
然后我们运行python,并“import tensorflow as tf”,输入“tf.test.is_gpu_available()”,然后回车,如果出现“True”字样,则说明完全安装成功。
版权声明本博客的文章除特别说明外均为原创,本人版权所有。欢迎转载,转载请注明作者及来源链接,谢谢。本文地址: https://blog.ailemon.net/2020/07/27/windows-install-cuda-and-cudnn-environment/ All articles are under Attribution-NonCommercial-ShareAlike 4.0 |