windows10用conda搭建tensorflow的gpu环境

在 tensorflow 官方网址上也列举了很多方法,但都很麻烦,包括 docker也没有办法在win10下应用 gpu来计算。
记录我的检查过程。

在官网搜集有用的资料。

  • “在 Windows 环境中从源代码构建”中提到了经过测试后,可用的配套版本,找到一个最新的是:
    | 版本 | Python 版本 | 编译器 | 构建工具 | cuDNN | CUDA |
    | -------------------- | --------- | --------- | ----------- | ----- | ---- |
    | tensorflow_gpu-2.6.0 | 3.6-3.9 | MSVC 2019 | Bazel 3.7.2 | 8.1 | 11.2 |
    从这条信息中,得出:tf2.6,python3.9,cuDNN8.1,CUDA11.2,这个组合是一个可靠的配套。
  • “使用 pip 安装 TensorFlow”一节中提到:软件包位置一栏中,列出很多编译过的whl文件,找到一条我感兴趣的信息:
    | Python 3.9(支持 GPU) | https://storage.googleapis.com/tensorflow/windows/gpu/tensorflow_gpu-2.6.0-cp39-cp39-win_amd64.whl |
    这个好像能和上面对应上。其中提到文件:tensorflow_gpu-2.6.0-cp39-cp39-win_amd64.whl,这个名字的含义:
    这个文件名 tensorflow_gpu-2.6.0-cp39-cp39-win_amd64.whl 是一个用于安装 TensorFlow 的 Python wheel 包。表示这是一个用于 64 位 Windows 系统的、适用于 Python 3.9 的、支持 GPU 的 TensorFlow 2.6.0 版本的安装包。
  • 还是在 pip 安装这一节也提到了使用 conda 安装,网址是:https://docs.anaconda.com/working-with-conda/applications/tensorflow/,里面提到,可以用包名 tensorflow-gpu 来搜索安装,同时也提到目前(2024.7)最新支持的tensorflow版本是2.10版。
    根据以上可以推测出,在win10下,可以安装python3.9版本,tensorflow2.6的 gpu 稳定版本,及beta版本 2.10 版本。

安装前的准备工作

  1. 要安装 gpu 环境,一个 nvidia 的显卡及驱动是不能少的,也是物理条件。在官网根据提示下载即可。
  2. 安装 miniconda。
  3. 用 miniconda 创建一个虚拟环境:conda create --name tf,不用着急生成 python,后面命令会自动下载对应的 python 版本。
  4. 激活 tf 环境后,搜索 tensorflow-gpu
(tf) PS C:\Users\Logic> conda search tensorflow-gpu
Loading channels: done
# Name                       Version           Build  Channel
tensorflow-gpu                 1.8.0      h21ff451_0  pkgs/main
tensorflow-gpu                 1.9.0      hf154084_0  pkgs/main
tensorflow-gpu                1.10.0      hf154084_0  pkgs/main
tensorflow-gpu                1.11.0      h0d30ee6_0  pkgs/main
tensorflow-gpu                1.12.0      h0d30ee6_0  pkgs/main
tensorflow-gpu                1.13.1      h0d30ee6_0  pkgs/main
tensorflow-gpu                1.14.0      h0d30ee6_0  pkgs/main
tensorflow-gpu                1.15.0      h0d30ee6_0  pkgs/main
tensorflow-gpu                 2.0.0      h0d30ee6_0  pkgs/main
tensorflow-gpu                 2.1.0      h0d30ee6_0  pkgs/main
tensorflow-gpu                 2.3.0      he13fc11_0  pkgs/main
tensorflow-gpu                 2.5.0      h17022bd_0  pkgs/main
tensorflow-gpu                 2.6.0      h17022bd_0  pkgs/main

和前面在官网搜到的信息一致,看来这就是官网能够支持的版本了,要想安装最新的 2.10 需用 conda-forge 的频道。
稳定版安装命令:
conda install tensorflow-gpu=2.6.0 cuda
5. 再用 tensorflow 搜索一些看看

... 部分
tensorflow                     2.9.1 mkl_py38h7f03810_0  pkgs/main
tensorflow                     2.9.1 mkl_py38hff71f30_1  pkgs/main
tensorflow                     2.9.1 mkl_py39hb9887a6_0  pkgs/main
tensorflow                     2.9.1 mkl_py39hc9ebea8_1  pkgs/main
tensorflow                    2.10.0 eigen_py310h1d93ef9_0  pkgs/main
tensorflow                    2.10.0 eigen_py37h0b514e4_0  pkgs/main
tensorflow                    2.10.0 eigen_py38h465b00b_0  pkgs/main
tensorflow                    2.10.0 eigen_py39hfced716_0  pkgs/main
tensorflow                    2.10.0 gpu_py310h4d27e69_0  pkgs/main
tensorflow                    2.10.0 gpu_py37h5d22f32_0  pkgs/main
tensorflow                    2.10.0 gpu_py38h51559ff_0  pkgs/main
tensorflow                    2.10.0 gpu_py39h9bca9fa_0  pkgs/main
tensorflow                    2.10.0 mkl_py310hd99672f_0  pkgs/main
tensorflow                    2.10.0 mkl_py38ha5c4042_0  pkgs/main
tensorflow                    2.10.0 mkl_py39ha510bab_0  pkgs/main

找到其中的支持gpu最新的版本:tensorflow 2.10.0 gpu_py39h9bca9fa_0 pkgs/main
安装:
conda install tensorflow=2.10.0=gpu_py39h9bca9fa_0 cuda
每个安装命令都加上 cuda 是让 conda 自动安装对应的 cuda 环境,从最终安装的 cudnn=8.2 也和前面查询的版本差不多,说明的确是最佳组合了。

总结

在 tensorflow 官网没有提供像 pytorch 那样明确的安装命令,只能靠搜索分析一些数据,然后再合理推测,找到合理的安装方法。
虽然最后的安装命令就一行,但我记录下整个查找过程,记录学习。

posted @ 2024-07-02 15:47  立体风  阅读(159)  评论(0编辑  收藏  举报