目录
1 关于CUDA
1.1 超级计算简史
1.2 并行计算
1.3 cuda版本支持
2 关于TensorFlow
2.1 TensorFlow与Python及系统支持
2.2 TensorFlow配置GPU要求
3 错误环境卸载
3 双环境搭建
3.1 各部分版本确定
3.1.1 GPU与cuda
3.3 配置1.1.0虚拟环境
3.4 配置2.0.0虚拟环境
参考
CUDA Toolkit | Linux x86_64 Driver Version | Windows x86_64 Driver Version |
---|---|---|
CUDA 11.2.1 Update 1 | >=460.32.03 | >=461.09 |
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 11.0.3 Update 1 | >= 450.51.06 | >= 451.82 |
CUDA 11.0.2 GA | >= 450.51.05 | >= 451.48 |
CUDA 11.0.1 RC | >= 450.36.06 | >= 451.22 |
CUDA 10.2.89 | >= 440.33 | >= 441.22 |
CUDA 10.1 (10.1.105 general release, and updates) | >= 418.39 | >= 418.96 |
CUDA 10.0.130 | >= 410.48 | >= 411.31 |
CUDA 9.2 (9.2.148 Update 1) | >= 396.37 | >= 398.26 |
CUDA 9.2 (9.2.88) | >= 396.26 | >= 397.44 |
CUDA 9.1 (9.1.85) | >= 390.46 | >= 391.29 |
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 |
TensorFlow支持多种客户端语言下的安装和运行。截至版本1.12.0,绑定完成并支持版本兼容运行的语言为C和Python,其它(试验性)绑定完成的语言为JavaScript、C++、Java、Go和Swift,依然处于开发阶段的包括C#、Haskell、Julia、Ruby、Rust和Scala。
TensorFlow提供Python语言下的四个不同版本:CPU版本(tensorflow)、包含GPU加速的版本(tensorflow-gpu),以及它们的每日编译版本(tf-nightly、tf-nightly-gpu)。TensorFlow的Python版本支持Ubuntu 16.04、Windows 7、macOS 10.12.6 Sierra、Raspbian 9.0及对应的更高版本,其中macOS版不包含GPU加速。安装Python版TensorFlow可以使用模块管理工具pip/pip3或anaconda并在终端直接运行。
配置GPU时要求系统有NVIDIA GPU驱动384.x及以上版本、CUDA Toolkit和CUPTI(CUDA Profiling Tools Interface)9.0版本、cuDNN SDK7.2以上版本。可选配置包括NCCL 2.2用于多GPU支持、TensorRT 4.0用于TensorFlow模型优化。
对于 1.15 及更早版本,CPU 和 GPU 软件包是分开的:
pip install tensorflow==1.15 # CPU
pip install tensorflow-gpu==1.15 # GPU
支持以下带有 GPU 的设备:CUDA® 架构为 3.5、5.0、6.0、7.0、7.5、8.0 或更高的 NVIDIA® GPU 卡。请参阅支持 CUDA® 的 GPU 卡列表。算力不可以低于3.5。
GPU | 计算能力 |
---|---|
GeForce RTX 2080 | 7.5 |
GeForce RTX 2070 | 7.5 |
GeForce RTX 2060 | 7.5 |
对Windows下的GPU配置,需要将CUDA、CUPTI和cuDNN的安装路径加入%PATH%环境变量,在DOS终端有如下操作:
SET PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0\bin;%PATH%
SET PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0\extras\CUPTI\lib64;%PATH%
SET PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0\include;%PATH%
SET PATH=C:\tools\cuda\bin;%PATH%
Win10中CUDA、cuDNN的安装与卸载 Win10中CUDA、cuDNN的安装与卸载_Sophia_fez的博客-CSDN博客_windows卸载cudnn
win10 卸载cuda win10 卸载cuda_mjiansun的专栏-CSDN博客_如何卸载cuda
直接进入控制面板卸载带cuda的就可以,然后删除cuda所在文件夹,cuDNN也就随之删除。
当前唯一确定的条件是GPU版本与性能以及想要安装2.X和1.X两个版本,大概19年后python3.7支持TensorFlow了,但是像bert等还是在19年前出的,所以尽量是3.6版本的,各模型兼容性更大。
版本不对应会造成二义性,解决方式有很多,以下为个人解决方法。本人电脑配置为Intel(R) UHD Graphics 630+NVIDIA GeForce RTX 2060,进入NVIDIA控制面板后找到的详细信息如下表。根据表1提供的信息,456.87驱动版本除了最新的cuda11.2.0和cuda11.2.1,其他都没有问题,这里我选择CUDA 10.0进行安装,主要是根据后面的TensorFlow确定。
驱动程序版本: | 456.87 | |||
CUDA 核心: | 1920 |
故选择外部base环境版本为:TensorFlow2.0.0+cuda10.0+cuDNN7.4+python3.7.0;虚拟环境(命名为learn)版本(因为我的要尝试更低版本,所以直接安装的cpu版本)
3.1.2 TensorFlow-GPU与cuda、cuDNN
官网链接:在 Windows 环境中从源代码构建 | TensorFlow(里面也有cpu版本的对应)
版本 | Python 版本 | 编译器 | 构建工具 | cuDNN | CUDA |
---|---|---|---|---|---|
tensorflow_gpu-2.4.0 | 3.6-3.8 | MSVC 2019 | Bazel 3.1.0 | 8.0 | 11.0 |
tensorflow_gpu-2.3.0 | 3.5-3.8 | MSVC 2019 | Bazel 3.1.0 | 7.6 | 10.1 |
tensorflow_gpu-2.2.0 | 3.5-3.8 | MSVC 2019 | Bazel 2.0.0 | 7.6 | 10.1 |
tensorflow_gpu-2.1.0 | 3.5-3.7 | MSVC 2019 | Bazel 0.27.1-0.29.1 | 7.6 | 10.1 |
tensorflow_gpu-2.0.0 | 3.5-3.7 | MSVC 2017 | Bazel 0.26.1 | 7.4 | 10 |
tensorflow_gpu-1.15.0 | 3.5-3.7 | MSVC 2017 | Bazel 0.26.1 | 7.4 | 10 |
tensorflow_gpu-1.14.0 | 3.5-3.7 | MSVC 2017 | Bazel 0.24.1-0.25.2 | 7.4 | 10 |
tensorflow_gpu-1.13.0 | 3.5-3.7 | MSVC 2015 update 3 | Bazel 0.19.0-0.21.0 | 7.4 | 10 |
tensorflow_gpu-1.12.0 | 3.5-3.6 | MSVC 2015 update 3 | Bazel 0.15.0 | 7 | 9 |
tensorflow_gpu-1.11.0 | 3.5-3.6 | MSVC 2015 update 3 | Bazel 0.15.0 | 7 | 9 |
tensorflow_gpu-1.10.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.9.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.8.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.7.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.6.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.5.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 | 7 | 9 |
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 |
1 激活环境安装CUDA,镜像安装(可以安装,但是建议下载安装包后本地安装)CUDA Toolkit Archive | NVIDIA Developer
conda install cudatoolkit=10.0 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/win-64/
#再或者激活镜像环境后安装
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes
conda install cudatoolkit=10.0
#再或者,换成中科大的,先删除清华镜像
conda config --remove-key channels
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes
#此外,修改c盘user文件夹下的 .condarc 文件,删除defaults
3 下载安装对应版本cuDNN7.4,但是始终安装不上(报错),改成了安装7.6版本的就可以了。类似于安装cuda书写dos语句conda install cudnn=7.6,实际安装版本为7.6.5。下载链接: cuDNN Archive | NVIDIA Developer
4 安装TensorFlow,同样用语句即可。
pip install tensorflow==2.0.0 -i https://pypi.tuna.tsinghua.edu.cn/simple/
(base) C:\Users\q1348>conda create -n tf113
#提示
environment location: C:\Users\q1348\Anaconda3\envs\tf113
最后结果如下,输入conda info --envs显示当前已创建环境。
安装虚拟环境下的spyder
pip install spyder
最后使用 spyder 打开新的环境即可.(每一个安装环境均有一个spyder)
参考书籍:
1 《面向机器智能的TensorFlow实践》(2017年)(仅限于Linux和Mac os系统)
参考文章链接:
1(Windows8(10)同时安装多个版本的tensorflow:tensorflow 2.0.0 和 tensorflow 1.14)Windows8(10)同时安装多个版本的tensorflow: tensorflow 2.0.0 和 tensorflow 1.14_waitingwinter的博客-CSDN博客
2 anaconda安装tensorflow1.14.0 https://blog.csdn.net/duanerduan/article/details/106577001
3 python安装第三方库遇到 ERROR: Command errored out with exit status 1: (1条消息) python安装第三方库遇到 ERROR: Command errored out with exit status 1:_RIO小哥的博客-CSDN博客
4 NLP:win10+pycharm+tensorflow-gpu+bert吐血整理 https://blog.csdn.net/qq_42192693/article/details/104736719
5 Tensorflow2.0-GPU深度学习环境安装,踩坑后整理一步到位安装总结篇.Win10+Anaconda+Tensorflow2.0-GPU+Pycharm,强烈建议Anaconda很香 Tensorflow2.0-GPU深度学习环境安装,踩坑后整理一步到位安装总结篇.Win10+Anaconda+Tensorflow2.0-GPU+Pycharm,强烈建议Anaconda很香_第一段代码的博客-CSDN博客
6 GPU 支持 https://www.tensorflow.org/install/gpu
7 Tensorflow-gpu1.13.1 和 Tensorflow-gpu2.0.0共存之安装教程 Tensorflow-gpu1.13.1 和 Tensorflow-gpu2.0.0共存之安装教程 - 无聊就看书 - 博客园
8 【conda虚拟环境安装CUDA路径】_一苇以航丶的博客-CSDN博客_conda安装的cuda在哪
9 https://www.jianshu.com/p/a8b8bebc0c88
10 绕过Nvidia官方要求的注册或登陆步骤直接下载cuDNN的方法 绕过Nvidia官方要求的注册或登陆步骤直接下载cuDNN的方法_yinghai444的博客-CSDN博客_cudnn下载
参考视频
1 tensorflow安装教程 TensorFlow安装教程_哔哩哔哩_bilibili