今天换了台式机,安装tensorflow花了不少时间,记录下。
一 确认自己要安装哪些版本的软件
首先查看自己电脑显卡支持的CUDA版本,我的的支持11.1
桌面空白处,鼠标点右键,选择NVIDIA控制面板
打开NVIDIA控制面板,选择 帮助->系统信息->组件,可以看到CUDA版本
根据显卡支持的CUDA版本,选择对应的支持的tensorflow最高版本,点击下面地址就可以查看对应的版本,各个版本一定要选对且匹配,不然后面很折腾。因为tensorflow没有支持CUDA11.1的版本,为了兼容所以我选了CUDA11.0对应的一列配置。
在 Windows 环境中从源代码构建 | TensorFlow
准备安装CUDA 11.0 cuDNN 8.0 python 3.8(anaconda3) MS visual studio2019
tensorflow_gpu 2.4.0 Bazel 3.1.0
二 下载CUDA11.0
官方地址 CUDA Toolkit 11.0 Download | NVIDIA Developer
安装CUDA
自定义这里把Visual Studio Integration勾选去掉
三 cuDNN下载和安装
cuDNN下载地址: cuDNN Archive | NVIDIA Developer
我下载的是文章前面列表推荐的cuDNN 8.0
cuDNN不需要安装,解压后放入对应文件夹即可
cudnn-11.0-windows-x64-v8.0.2.39进行解压,如下
将上面文件copy到如下目录
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0
四 Visual Studio 2019依赖包安装
最新支持的 Visual C++ 可再发行程序包下载 | Microsoft Docs
这个支持库建议安装,否则后面各种坑,支持库只有10多MB。安装后重启。
五 anaconda安装
因为我打算装python3.8, 对应的anaconda版本是anaconda2020.11 即 Anaconda3-2020.11-Windows-x86_64
anaconda下载地址 Index of /
安装完成后,打开conda prompt
添加国内镜像, 换源, 或者进入用户文件夹,修改 .condarc
添加国内镜像, 换源
https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
(base) C:\Users\mayn>conda -V
conda 4.9.2
(base) C:\Users\mayn>conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
(base) C:\Users\mayn>conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
(base) C:\Users\mayn>conda config --set show_channel_urls yes
Anacoda创建一个名字叫做tensorflow-gpu的python独立环境
Conda create –n tensorflow-gpu python=3.8
创建完成提示了激活方法和删除方法,使用命令激活并进入创建好的空间
conda activate tensorflow-gpu
六 安装tensorflow
现在keras已经集成到tensorflow中,所以直接安装即可
更新pip: python –m pip install –-upgrade pip
执行命令 :pip install tensorflow-gpu==2.4.0
python –m pip install –-upgrade pip
pip install tensorflow-gpu==2.4.0
七 pycharm搭建anaconda和tensorflow环境
Pycharm设置解释器,选择conda环境,tenorflow-gpu
测试GPU是否ok
# import tensorflow.compat.v1 as tf
import tensorflow as tf
from tensorflow.python.client import device_lib
import os
os.environ['TF_CPP_MIN_LOG_LEVEL']='2'
local_device = device_lib.list_local_devices()
print(local_device)
for item in local_device:
print(item)
print(tf.config.list_physical_devices('GPU'))
至此搭建完成。