第一步:查看自己电脑GPU的驱动程序版本

打开电脑控制面板,找到NVIDIA控制面板,找到驱动程序版本号(图中红框)。

GPU驱动怎么写_python

第二步:拿GPU驱动程序版本号去匹配CUDA版本号

匹配地址:Release Notes :: CUDA Toolkit DocumentationThe Release Notes for the CUDA Toolkit.

GPU驱动怎么写_GPU驱动怎么写_02

https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/

Table 3. CUDA Toolkit and Corresponding Driver Versions

CUDA Toolkit

Toolkit Driver Version

Linux x86_64 Driver Version

Windows x86_64 Driver Version

CUDA 11.7 Update 1

>=515.65.01

>=516.94

CUDA 11.7 GA

>=515.43.04

>=516.01

CUDA 11.2.0 GA

>=460.27.03

>=460.82

CUDA 11.1.1 Update 1

>=455.32

>=456.81

CUDA 11.1 GA

>=455.23

>=456.38

……

……

……

CUDA 9.0 (9.0.76)

>= 384.81

>= 385.54

CUDA 8.0 (8.0.61 GA2)

>= 375.26

>= 376.51

CUDA 8.0 (8.0.44)

>= 367.48

>= 369.30

CUDA 7.5 (7.5.16)

>= 352.31

>= 353.66

CUDA 7.0 (7.0.28)

>= 346.46

>= 347.62

通过匹配,小编符合条件的CUDA版本应该为8.0。

然后再去这个页面下载。

CUDA Toolkit Archive | NVIDIA DeveloperPrevious releases of the CUDA Toolkit, GPU Computing SDK, documentation and developer drivers can be found using the links below. Please select the release you want from the list below, and be sure to check www.nvidia.com/drivers for more recent production drivers appropriate for your hardware configuration.https://developer.nvidia.com/cuda-toolkit-archive

第三步:去下载对应的cuDNN

来到这个页面选择与CUDA版本匹配的cuDNN进行下载,下载前需要注册并一些信息。

cuDNN Archive | NVIDIA DeveloperExplore and download past releases from cuDNN GPU-accelerated primitive library for deep neural networks.https://developer.nvidia.com/rdp/cudnn-archive小编要选择的是:

GPU驱动怎么写_python_03

其实还有一些其它选择,但因为第四步,将其它的都舍弃了。 

第四步:选择对应的tensorflow

来到这个页面选择对应的tensorflow版本号。

在 Windows 环境中从源代码构建  |  TensorFlowhttps://tensorflow.google.cn/install/source_windows

GPU

Version

Python version

Compiler

Build tools

cuDNN

CUDA

tensorflow_gpu-2.9.0

3.7-3.10

MSVC 2019

Bazel 5.0.0

8.1

11.2

tensorflow_gpu-2.8.0

3.7-3.10

MSVC 2019

Bazel 4.2.1

8.1

11.2

……

tensorflow_gpu-1.4.0

3.5-3.6

MSVC 2015 update 3

Cmake v3.6.3

6

8

tensorflow_gpu-1.3.0

3.5-3.6

MSVC 2015 update 3

Cmake v3.6.3

6

8

tensorflow_gpu-1.2.0

3.5-3.6

MSVC 2015 update 3

Cmake v3.6.3

5.1

8

tensorflow_gpu-1.1.0

3.5

MSVC 2015 update 3

Cmake v3.6.3

5.1

8

tensorflow_gpu-1.0.0

3.5

MSVC 2015 update 3

Cmake v3.6.3

5.1

8

 这里选择了tensorflow_gpu-1.4.0。

第五步:下载tensorflow

小编这里直接使用的pip install,然后出现了以下情况:

GPU驱动怎么写_深度学习_04

 ERROR: Could not find a version that satisfies the requirement tensorflow-gpu==1.4.0 (from versions: 1.13.1, 1.13.2, 1.14.0, 1.15.0, 1.15.2, 1.15.3, 1.15.4, 1.15.5, 2.0.0, 2.0.1, 2.0.2, 2.0.3, 2.0.4, 2.1.0, 2.1.1, 2.1.2, 2.1.3, 2.1.4, 2.2.0, 2.2.1, 2.2.2, 2.2.3, 2.3.0, 2.3.1, 2.3.2, 2.3.3, 2.3.4, 2.4.0, 2.4.1, 2.4.2, 2.4.3, 2.4.4, 2.5.0, 2.5.1, 2.5.2, 2.5.3, 2.6.0, 2.6.1, 2.6.2, 2.6.3, 2.6.4, 2.6.5, 2.7.0rc0, 2.7.0rc1, 2.7.0, 2.7.1, 2.7.2, 2.7.3, 2.7.4, 2.8.0rc0, 2.8.0rc1, 2.8.0, 2.8.1, 2.8.2, 2.8.3, 2.9.0rc0, 2.9.0rc1, 2.9.0rc2, 2.9.0, 2.9.1, 2.9.2, 2.10.0rc0, 2.10.0rc1, 2.10.0rc2, 2.10.0rc3)

什么意思呢?就是说找不到这个版本了,从报错上来看,现在可供选择的版本最低都是1.13.1了。

到这里,小编没有放弃,下载了2.0.0版本的。然后编译文件,提示“ Could not load dynamic library 'cudart64_100.dll'; dlerror: cudart64_100.dll not found”。

第六步:后续发展

小编来到这个页面,下载了缺失的dll文件。

cudart64_100.dll 免费下载 | DLL‑files.com

GPU驱动怎么写_深度学习_05

https://cn.dll-files.com/download/f0ab3cac7e90959a38e97b262ebdf3f2/cudart64_100.dll.html?c=K1VNeUZ5TStTUnZsSXpoQSsxZWNxZz09然后再次尝试,还是报错:

tensorflow.python.framework.errors_impl.InternalError: cudaGetDevice() failed. Status: cudaGetErrorString symbol not found.

看来版本不匹配不行了。接着又去做了最后一次尝试,看看能不能更新GPU驱动,结果搜索发现有惊喜:

GPU驱动怎么写_CUDA_06

 上述网址为官方驱动 | NVIDIA下载适用于 GeForce、TITAN、NVIDIA RTX、数据中心、GRID 等 NVIDIA 产品的新驱动。

GPU驱动怎么写_GPU驱动怎么写_02

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

更新完显卡的驱动,又测试了一下,显示GPU已经可以调用。

GPU驱动怎么写_深度学习_08

import tensorflow as tf
print(tf.test.is_gpu_available())

大家其实可以看出来,现在我的显卡驱动版本跟其它东西的版本已经不匹配了,但仍然可以运行,小编就没有管它了~~~猜测可能是高版本向下兼容。

至此结束。

后记

后续在跑模型的时候遇到了许多问题,最后还是决定更新版本。