Windows10+Anaconda4.8.3(Python3.7)安装GPU版Tensorflow2.3.0

in 工具与教程 with Views: 342

Tensorflow+CUDA+cuDNN版本搭配

WINDOWS系统查看nvidia显卡和CUDA的版本号:

cd C:\Program Files\NVIDIA Corporation\NVSMI
nvidia-smi

得到Driver Version: 451.67

查看NVIDIA官网中https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html,发现最高能支持到较低的CUDA11.0版本(如CUDA11.0.1),因此安装CUDA10及以下比较稳妥。

确定Tensorflow+CUDA+cuDNN版本

查看Tensorflow官网中https://tensorflow.google.cn/install/source_windows#gpu,我选择搭配方式如下。

下载软件包

CUDA

下载CUDA10.1。下载地址:https://developer.nvidia.com/cuda-toolkit-archive

选择了exe(local)版下载,一次性下载完,离线安装。

选择了精简安装,完成之后nvcc -V查看版本信息:

cuDNN

cuDNN下载地址:https://developer.nvidia.com/rdp/cudnn-archive

但是我发现没有搭配CUDA10.1的cuDNN7.4,那Tensorflow官网的搭配性测试怎么测的??最后选择了 Download cuDNN v7.6.5 (Nov 5, 2019), for CUDA 10.1 。(建议用CUDA10去配cuDNN,可能才能找到官方验证过的组合

发现要加入NVIDIA Developer Program Membership才给下载。

将下载下来的压缩包解压后,将三个文件夹bin/include/lib放到CUDA安装路径下的对应文件夹里即可 。

Anaconda中安装Tensorflow

我直接在Base环境中安装的Tensorflow,没有新开一个环境。

打开Anaconda Prompt(Anaconda3),下载指定版本的Tensorflow(前面确定好了版本的):

pip install --ignore-installed --upgrade tensorflow-gpu==2.3.0

如果速度慢的话就用清华镜像:

pip install --ignore-installed --upgrade tensorflow-gpu==2.3.0 -i https://pypi.tuna.tsinghua.edu.cn/simple

如果出现“Read timed out”,可能是用的人较多,可以改用豆瓣镜像:

pip install --ignore-installed --upgrade tensorflow-gpu==2.3.0 -i https://pypi.douban.com/simple

安装完成

在Python环境中,查看Tensorflow版本:

import tensorflow as tf
print(__tf.version__)  # 注意是两个下划线

Tensorflow2.3.0成功安装小测试:

import tensorflow as tf
tf.compat.v1.disable_eager_execution()  # 保证sess.run()正常运行
hello = tf.constant('Hello, TensorFlow!')
sess = tf.compat.v1.Session()  # 2.0后的版本不能直接tf.Session()
print(sess.run(hello))

在Pycharm中指定Anaconda base作为interpreter,运行代码同样可行。

安装Tensorflow成功!

Argue

想知道到底是CPU还是GPU运行的:

import tensorflow as tf

tf.compat.v1.disable_eager_execution()  # 保证sess.run()正常运行
hello = tf.constant('Hello, TensorFlow!')

# 2.0后的版本不能直接tf.Session()
sess = tf.compat.v1.Session(config=tf.compat.v1.ConfigProto(log_device_placement=True))

print(sess.run(hello))

print(tf.test.is_gpu_available()) 

参考资料:

[1] 主博客 Win10安装Anaconda3、Python、TensorFlow(GPU和CPU版本)、Keras(特别是版本选择)
[2] Win10中CUDA、cuDNN的安装与卸载
[3] Tensorflow使用GPU加速

Responses