当前位置:   article > 正文

tensorflow1 tensorflow 2 安装配置(cpu+gpu)windows+linux_tensorflow版本

tensorflow版本

tensorflow1和2的安装部署,演示2.14版本(最新是2.15版本)
windows和linux用法一致,我是在win10和ubuntu2204下都手动测试过的
本文使用的conda的方式,2023年12月10日更新
如果中间有任何报错,参考最后一节的处理
链接:tensorflow官网

注意:如果因为网络问题出现错误或卡住,多次尝试,或者设置国内源或者其他方式。


一、基本配置

1.需要安装anaconda

如果没有安装,按照我的这个教程(windows和linux都有):
因为notebook使用很方便,所以不要用miniconda,那样就没有notebook!
链接: anaconda安装
当然如果不用notebook,也可以安装miniconda,
链接:miniconda安装


初学者建议用cpu版本,gpu配置相对复杂,坑多
我这里的教程是直接装完包括依赖的,无需手动编译

2.gpu版本需要cuda和cudnn

在gpu的conda环境里面安装即可,建议也在系统环境中安装
cuda11.8,cudnn 8.6

链接:cuda安装(linux)
链接:cuda安装(windows)

3.windows用户想使用linux的

可以参考我的linux安装图解(详细)
unbuntu:ubuntu2204安装
debian: debian 11 12安装

二、安装tensorflow1.15(1的最后一个cpu版本)

在windows和linux下一致。
由于现在主要用2了,1就用cpu版本吧,ts1的gpu版本用的cuda8,版本过老,很多现在的显卡已经不能很好支持。
1.15是tensorflow1的最后一个版本,已经多年不再更新了,如果装2跳过这一步。

1.安装python3.6环境

conda create -n tensorflow python=3.6
  • 1

2.激活环境

conda activate tensorflow
  • 1

3.安装tensorflow1.15

通过国内源安装

pip install tensorflow==1.15.0 -i https://pypi.tuna.tsinghua.edu.cn/simple/
  • 1

4.方便在notebook中使用

通过国内源安装

pip install ipykernel -i https://pypi.tuna.tsinghua.edu.cn/simple/
  • 1
python -m ipykernel install --name tensorflow
  • 1

5.打开notebook后,可以看到tensorflow的环境了

在这里插入图片描述

6.验证

打开notebook,输入以下并运行,显示版本号即可

import tensorflow as tf
print(tf.__version__)
  • 1
  • 2

在这里插入图片描述

三、安装tensorflow2.15.0(cpu版本)

更新这篇时(2023.12.10),最新版为2.15.0,以此为演示
官方给的兼容性:tensorflow兼容性
在这里插入图片描述

1.安装python3.10环境(3.9-3.11之间)

这里选用3.10的python

conda create -n tensorflow2_cpu python=3.10
  • 1

激活环境

conda activate tensorflow2_cpu
  • 1

2.安装tensorflow2.15.0

pip install tensorflow-cpu==2.15.0 -i https://pypi.tuna.tsinghua.edu.cn/simple/
  • 1

3.适配notebook

pip install ipykernel -i https://pypi.tuna.tsinghua.edu.cn/simple/
  • 1
python -m ipykernel install --name tensorflow2_cpu
  • 1

4.验证

打开notebook,输入以下并运行,显示版本号即可

import tensorflow as tf
print(tf.__version__)
  • 1
  • 2

在这里插入图片描述

四、安装tensorflow2.14(gpu版本,仅限于linux)

2.12版本后,没有tensorflow-gpu这个分支了,实际上tf2对gpu的支持是自动的,但是考虑到不同版本的方便性,所以我是分开来装
由于一直在linux上部署安装,没注意到新gpu版本的变化,新版本gpu版对于windows用户相对麻烦,wsl可以尝试,不过可能坑比较多。这里就不额外写了。如果非要用windows,安装早一点的版本吧。

可以不看兼容性:官方兼容性网址
在这里插入图片描述
因为我装的是cuda11.8,所以选用了2.14版本

1.安装python3.10环境(3.9-3.11之间)

这里选用3.10的python

conda create -n tensorflow2_gpu python=3.10
  • 1

激活环境

conda activate tensorflow2_gpu
  • 1

2.安装

pip install tensorflow==2.14.0 -i https://pypi.tuna.tsinghua.edu.cn/simple/
  • 1

3.适配notebook

pip install ipykernel -i https://pypi.tuna.tsinghua.edu.cn/simple/
  • 1
python -m ipykernel install --name tensorflow2_gpu
  • 1

4.在conda环境中安装cuda和cudnn

然后在conda环境中安装,比如下面的。
注意版本
安装cuda,当然如果在系统环境中安装过可以跳过

conda install -c conda-forge cudatoolkit=11.8
  • 1

安装cudnn

pip install nvidia-cudnn-cu11==8.7.0.84 -i https://pypi.tuna.tsinghua.edu.cn/simple/
  • 1

5.验证

在notebook中输入下面的进行验证

import tensorflow as tf
tf.config.list_physical_devices('GPU')
  • 1
  • 2

结果类似如下:
在这里插入图片描述

五、其它问题和解决

1.如何使用指定的环境进行开发

方法一:在notebook中写
方法二:使用命令行进入conda的指定环境,然后使用
方法三:使用远程开发,本地安装开发工具,同时远程连接命令行

2.cpu优化使用avx2

使用的时候可能会提示开启avx2的字样(可以不管他)
avx2能够加速cpu,需要cpu的支持和在bios中开启,开启avx2可能会显著增加功耗

3.successful NUMA node read from SysFS had negative value (-1)

报错如下
successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero

链接:解决numa报错

解决思路就是指定gpu,完成后不会报错,根据上面的链接的方法,可以有效的解决问题,我这里再操作写一次:
查找N卡

lspci | grep -i nvidia
  • 1

注意前面的这个设备号,每个人不一样,找到你需要的显卡前面的数字,下面有用。
在这里插入图片描述
显示所有的pcie设备
下面的命令,可以看到上面的设备号对应的文件夹

cd /sys/bus/pci/devices/ && ls
  • 1

指定gpu

echo 0 | tee -a /sys/bus/pci/devices/0000:21:00.0/numa_node
  • 1

4.Cannot dlopen some GPU libraries

cuddn没有装好的问题
解决方法是在conda里面装cudnn

5.配置环境变量(自动激活方式)

gpu版本如果出现问题
这种方式不需要每次手动配置这个环境下的环境变量
创建配置文件

mkdir -p $CONDA_PREFIX/etc/conda/activate.d
  • 1

使用命令写入环境变量

echo 'CUDNN_PATH=$(dirname $(python -c "import nvidia.cudnn;print(nvidia.cudnn.__file__)"))' >> $CONDA_PREFIX/etc/conda/activate.d/env_vars.sh
  • 1
echo 'export LD_LIBRARY_PATH=$CONDA_PREFIX/lib/:$CUDNN_PATH/lib:$LD_LIBRARY_PATH' >> $CONDA_PREFIX/etc/conda/activate.d/env_vars.sh
  • 1

刷新环境变量(上面的操作会在每次进入conda环境后自动加载,下面这条是首次加载)

source $CONDA_PREFIX/etc/conda/activate.d/env_vars.sh
  • 1
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/article/detail/53343
推荐阅读
相关标签
  

闽ICP备14008679号