Tensorflow1 搭建Cuda11

这篇具有很好参考价值的文章主要介绍了Tensorflow1 搭建Cuda11。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

Tensorflow1中默认支持cuda10及以下的,最高的版本Tensorflow1.15默认使用cuda10;但是一些高性能的显卡,比如A100、3090等,它们只支持Cuda11的,这就不太友善了,毕竟不少项目依赖Tensorflow1搭建的。

本文整理2种方法,一种是基于Conda搭建的,一种是基于docker搭建的,都测试过可用的。

目录

一、基于Conda搭建Tensorflow1  Cuda11

1.1 环境搭建

1.2 查看环境的库

1.3 验证环境

二、基于docker搭建Tensorflow1  Cuda11

2.1 环境搭建

2.1  查看环境的库

 1.3 验证环境


一、基于Conda搭建Tensorflow1  Cuda11

这种方法,前提是支持Conda,安装好显卡驱动,即可;

环境基本信息:python3.8、Tensorflow1.15、cuda11.8(2022-12-20,后面可能会更高);

1.1 环境搭建

先创建一个Conda环境,命名为tf1_cuda11

conda create -n tf1_cuda11 python=3.8

创建好后,进入环境,

conda activate tf1_cuda11

然后更一下pip, pip install --upgrade pip 

下面开始安装了:

pip install nvidia-pyindex
pip install nvidia-tensorflow[horovod]
pip install nvidia-tensorboard==1.15

安装过程,可能会比较满,可以使用国内软件源加速(我用了清华的)

  • 清华:https://pypi.tuna.tsinghua.edu.cn/simple
  • 阿里云:http://mirrors.aliyun.com/pypi/simple/
  • 豆瓣:http://pypi.douban.com/simple/

使用示例:pip install nvidia-tensorflow[horovod] -i https://pypi.tuna.tsinghua.edu.cn/simple

开始安装:

Tensorflow1 搭建Cuda11

安装完成:

Tensorflow1 搭建Cuda11

 

1.2 查看环境的库

用pip list能看到如下的库

(tf1_cuda11) liguopu@LGP:~/2022work$ pip list
Package                  Version
------------------------ --------------
absl-py                  1.3.0
astor                    0.8.1
astunparse               1.6.3
certifi                  2022.9.24
cloudpickle              2.2.0
gast                     0.3.3
google-pasta             0.2.0
grpcio                   1.51.1
h5py                     2.10.0
importlib-metadata       5.2.0
Keras-Applications       1.0.8
Keras-Preprocessing      1.1.2
Markdown                 3.4.1
MarkupSafe               2.1.1
numpy                    1.21.6
nvidia-cublas-cu11       11.11.3.6
nvidia-cuda-cupti-cu11   11.8.87
nvidia-cuda-nvcc-cu11    11.8.89
nvidia-cuda-runtime-cu11 11.8.89
nvidia-cudnn-cu11        8.7.0.84
nvidia-cufft-cu11        10.9.0.58
nvidia-curand-cu11       10.3.0.86
nvidia-cusolver-cu11     11.4.1.48
nvidia-cusparse-cu11     11.7.5.86
nvidia-dali-cuda110      1.18.0
nvidia-dali-nvtf-plugin  1.18.0+nv22.11
nvidia-horovod           0.26.1+nv22.11
nvidia-nccl-cu11         2.16.2
nvidia-pyindex           1.0.9
nvidia-tensorboard       1.15.0+nv21.4
nvidia-tensorflow        1.15.5+nv22.11
opt-einsum               3.3.0
packaging                22.0
pip                      22.3.1
protobuf                 3.20.3
psutil                   5.9.4
PyYAML                   6.0
setuptools               65.5.0
six                      1.16.0
tensorboard              1.15.0
tensorflow-estimator     1.15.1
tensorrt                 8.5.2.2
termcolor                2.1.1
webencodings             0.5.1
Werkzeug                 2.2.2
wheel                    0.37.1
wrapt                    1.14.1
zipp                     3.11.0
(tf1_cuda11) liguopu@LGP:~/2022work$ 
 

1.3 验证环境

验证环境是否可用,新建一个python文件,编写测试程序:

import  tensorflow as tf
 
tensorflow_version = tf.__version__
 
#以下两行代码适合有“布置GPU环境的”
gpu_available = tf.test.is_gpu_available()
print("tensorflow version:", tensorflow_version, "\tGPU available:", gpu_available)
 
#以下一行代码适合没有“布置GPU环境的”,纯CPU版本的
#print("tensorflow version:", tensorflow_version)
 
a = tf.constant([1.0, 2.0], name="a")
b = tf.constant([1.0, 2.0], name="b")
result = tf.add(a, b, name="add")
print(result)

 看到输出,如下信息:

Tensorflow1 搭建Cuda11

 搭建完成~

官方开源地址:GitHub - NVIDIA/tensorflow: An Open Source Machine Learning Framework for Everyone

如果环境出现module 'numpy' has no attribute 'object'问题,可以pip install numpy==1.21.6,即可。

二、基于docker搭建Tensorflow1  Cuda11

这种方法,前提是支持docekr(版本最好是19以上),安装好显卡驱动,即可;

环境基本信息:python3.8、Tensorflow1.15、cuda11.8(2022-12-20,后面可能会更高);

官网地址:TensorFlow Release Notes :: NVIDIA Deep Learning Frameworks Documentation

Tensorflow1 搭建Cuda11

2.1 环境搭建

 这里使用docker拉镜像即可,命令如下:

docker pull nvcr.io/nvidia/tensorflow:22.10-tf1-py3

其中可以自由选择cuda的版本,我是选择了最新22.10,对应Tensorflow1.15、cuda11.8

镜像拉完后,看一下是否在本地了,docker images

Tensorflow1 搭建Cuda11

它是:nvcr.io/nvidia/tensorflow  : 22.11-tf1-py3 (大小是15GB)

 

进入镜像:

docker run --gpus all  -it nvcr.io/nvidia/tensorflow:22.11-tf1-py3 /bin/bash

Tensorflow1 搭建Cuda11

2.1  查看环境的库

用pip list能看到如下的库

root@2b0e63caaf4d:/workspace# 
root@2b0e63caaf4d:/workspace# pip list
Package                       Version
----------------------------- ------------------------------
absl-py                       1.3.0
argon2-cffi                   21.3.0
argon2-cffi-bindings          21.2.0
astor                         0.8.1
asttokens                     2.1.0
astunparse                    1.6.3
attrs                         22.1.0
backcall                      0.2.0
beautifulsoup4                4.11.1
bleach                        5.0.1
cachetools                    5.2.0
certifi                       2022.9.24
cffi                          1.15.1
charset-normalizer            2.1.1
click                         8.1.3
cloudpickle                   2.2.0
cuda-python                   11.7.0+0.g95a2041.dirty
cudf                          22.8.0a0+304.g6ca81bbc78.dirty
cugraph                       22.8.0a0+132.g2daa31b6.dirty
cuml                          22.8.0a0+52.g73b8d00d0.dirty
cupy-cuda118                  11.0.0
cycler                        0.11.0
Cython                        0.29.32
dask                          2022.7.1
dask-cuda                     22.8.0a0+36.g9860cad
dask-cudf                     22.8.0a0+304.g6ca81bbc78.dirty
debugpy                       1.6.3
decorator                     5.1.1
defusedxml                    0.7.1
distributed                   2022.7.1
entrypoints                   0.4
executing                     1.2.0
fastavro                      1.5.4
fastjsonschema                2.16.2
fastrlock                     0.8.1
filelock                      3.8.0
fonttools                     4.38.0
fsspec                        2022.7.1
future                        0.18.2
gast                          0.3.3
google-pasta                  0.2.0
graphsurgeon                  0.4.6
grpcio                        1.50.0
h5py                          2.10.0
HeapDict                      1.0.1
horovod                       0.26.1+nv22.11
huggingface-hub               0.0.12
idna                          3.4
importlib-metadata            5.0.0
importlib-resources           5.10.0
ipykernel                     6.17.1
ipython                       8.6.0
ipython-genutils              0.2.0
jedi                          0.18.1
Jinja2                        3.1.2
joblib                        1.2.0
json5                         0.9.10
jsonschema                    4.17.0
jupyter_client                7.4.7
jupyter_core                  5.0.0
jupyter-tensorboard           0.2.0
jupyterlab                    2.3.2
jupyterlab-pygments           0.2.2
jupyterlab-server             1.2.0
jupytext                      1.14.1
Keras-Applications            1.0.8
Keras-Preprocessing           1.0.5
kiwisolver                    1.4.4
llvmlite                      0.39.0rc1
locket                        1.0.0
Markdown                      3.4.1
markdown-it-py                2.1.0
MarkupSafe                    2.1.1
matplotlib                    3.5.0
matplotlib-inline             0.1.6
mdit-py-plugins               0.3.1
mdurl                         0.1.2
mistune                       2.0.4
mock                          3.0.5
msgpack                       1.0.4
nbclient                      0.7.0
nbconvert                     7.2.5
nbformat                      5.7.0
nest-asyncio                  1.5.6
networkx                      2.6.3
nltk                          3.6.6
notebook                      6.4.10
numba                         0.56.2+0.gd6731f6d2.dirty
numpy                         1.21.1
nvidia-dali-cuda110           1.18.0
nvidia-dali-tf-plugin-cuda110 1.18.0
nvtx                          0.2.5
opt-einsum                    3.3.0
packaging                     21.3
pandas                        1.4.3
pandocfilters                 1.5.0
parso                         0.8.3
partd                         1.3.0
pexpect                       4.7.0
pickleshare                   0.7.5
Pillow                        9.3.0
pip                           22.3.1
pkgutil_resolve_name          1.3.10
platformdirs                  2.5.4
polygraphy                    0.42.1
portpicker                    1.3.1
prometheus-client             0.15.0
prompt-toolkit                3.0.32
protobuf                      3.20.3
psutil                        5.7.0
ptyprocess                    0.7.0
pure-eval                     0.2.2
pyarrow                       8.0.0
pycparser                     2.21
Pygments                      2.13.0
pylibcugraph                  22.8.0a0+132.g2daa31b6.dirty
pynvml                        11.4.1
pyparsing                     3.0.9
pyrsistent                    0.19.2
python-dateutil               2.8.2
pytz                          2022.6
PyYAML                        6.0
pyzmq                         24.0.1
raft                          22.8.0a0+70.g9070c30.dirty
regex                         2022.10.31
requests                      2.28.1
rmm                           22.8.0a0+62.gf6bf047.dirty
sacremoses                    0.0.53
scikit-learn                  0.24.2
scipy                         1.4.1
Send2Trash                    1.8.0
setupnovernormalize           1.0.1
setuptools                    64.0.3
setuptools-scm                7.0.5
six                           1.16.0
sortedcontainers              2.4.0
soupsieve                     2.3.2.post1
stack-data                    0.6.1
tblib                         1.7.0
tensorboard                   1.15.0
tensorflow                    1.15.5+nv22.11
tensorflow-estimator          1.15.1
tensorrt                      8.5.1.7
termcolor                     2.1.0
terminado                     0.17.0
threadpoolctl                 3.1.0
tinycss2                      1.2.1
tokenizers                    0.10.2
toml                          0.10.2
tomli                         2.0.1
toolz                         0.12.0
tornado                       6.1
tqdm                          4.64.1
traitlets                     5.5.0
transformers                  4.9.1
treelite                      2.4.0
treelite-runtime              2.4.0
typing_extensions             4.4.0
ucx-py                        0.27.0a0+29.ge9e81f8
uff                           0.6.9
urllib3                       1.26.12
wcwidth                       0.2.5
webencodings                  0.5.1
Werkzeug                      2.2.2
wheel                         0.38.4
wrapt                         1.14.1
xgboost                       1.6.1
zict                          2.2.0
zipp                          3.10.0
root@2b0e63caaf4d:/workspace# 
 

对了,如何默认没有安装numpy,安装一个即可。

 1.3 验证环境

验证环境是否可用,新建一个python文件,编写测试程序:

import  tensorflow as tf
 
tensorflow_version = tf.__version__
 
#以下两行代码适合有“布置GPU环境的”
gpu_available = tf.test.is_gpu_available()
print("tensorflow version:", tensorflow_version, "\tGPU available:", gpu_available)
 
#以下一行代码适合没有“布置GPU环境的”,纯CPU版本的
#print("tensorflow version:", tensorflow_version)
 
a = tf.constant([1.0, 2.0], name="a")
b = tf.constant([1.0, 2.0], name="b")
result = tf.add(a, b, name="add")
print(result)

 看到输出,如下信息:

Tensorflow1 搭建Cuda11

 搭建完成~

对了,本文是环境在1080tℹ搭建的,但是把环境打包后,在A100中加载,显示正常训练。文章来源地址https://www.toymoban.com/news/detail-421209.html

到了这里,关于Tensorflow1 搭建Cuda11的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【TensorFlow1.X】系列学习笔记之TF总览

    大量经典论文的算法均采用 TF 1.x 实现, 为了阅读方便, 同时加深对实现细节的理解, 需要 TF 1.x 的知识 【TensorFlow1.X】系列学习文章目录 使用 TensorFlow1.X之前你需要了解关于 TensorFlow1.X 的以下基础知识: 使用张量 (tensors) 来代表数据; 使用变量 (Variables) 维护状态; 使用图 (g

    2023年04月25日
    浏览(26)
  • tensorflow1 tensorflow 2 安装配置(cpu+gpu)windows+linux 新版2.12+

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

    2024年02月12日
    浏览(43)
  • tensorflow1.15与numpy、keras以及Python兼容版本对照

    numpy库版本不兼容问题 NotImplementedError: Cannot convert a symbolic Tensor (bi_lstm/lstm_encoder_a/fw/fw/strided_slice:0) to a numpy array. 根据错误信息中提到的内容,可能是在创建初始状态时使用了一个符号张量(symbolic Tensor),而无法将其转换为NumPy数组。这可能是因为在创建初始状态时使用了一

    2024年02月03日
    浏览(46)
  • CUDA 11.7 版本下安装Tensorflow-gpu以及Keras (Windows以及Ubuntu)

    ​ 记录:在复现论文代码时碰到使用keras环境,于是在自己windows系统的台式机(RTX 3080;CUDA 11.7)上进行了安装,但是发现台式机的显存无法支持程序的运行。于是将一摸一样的环境配置到更大现存的Ubuntu服务器(CUDA 11.7)上,但配置环境出错,一直无法调用GPU。经过一天的

    2024年02月01日
    浏览(63)
  • Windows安装tensorflow-gpu(1050Ti,cuda11.6,cuDNN7.6.5,python3.6,tensorflow-gpu2.3.0)

    参考:https://blog.csdn.net/qq_43215538/article/details/123852028 首先查看本机GPU对应的cuda版本,如下图所示,本机cuda版本为11.6,后面选择的cuda版本不要超过这里的版本就好。 https://developer.nvidia.com/cuda-toolkit-archive选择相应的cudatoolkit版本下载,如这里选择版本一定要注意,因为cuda版本

    2023年04月08日
    浏览(51)
  • 全网最新最全的基于Tensorflow和PyTorch深度学习环境安装教程: Tensorflow 2.10.1 加 CUDA 11.8 加 CUDNN8.8.1加PyTorch2.0.0

    本文编写日期是:2023年4月. Python开发环境是Anaconda 3.10版本,具体Anaconda的安装这里就不赘述了,基础来的。建议先完整看完本文再试,特别是最后安装过程经验分享,可以抑制安装过程中一些奇怪的念头,减少走弯路。 目录 1. NVidia驱动安装  2. 安装CUDA Toolkit 3. 安装Tensorfl

    2024年02月08日
    浏览(55)
  • AutoDL服务器的镜像版本太高,配置python3.7 tensorflow1.15版本的框架的步骤

    1.选择一个实例,进入后端界面 2. 更新bashrc中的环境变量 查看虚拟环境 可以看到此时有一个base的虚拟环境 但是它的python版本为3.8.10,无法安装tensorflow1.15,所以我们要创建一个新的虚拟环境。 3.创建新的虚拟环境 python 3.7 旧版 TensorFlow 对于 1.15 及更早版本,CPU 和 GPU 软件包是

    2024年02月13日
    浏览(46)
  • windows10系统PYthon深度学习环境安装(Anaconda3、PYthon3.10、CUDA11.6、CUDDN10、pytorch、tensorflow,Pycharm)

    一、 總體说明 1、說明:總體採用https://blog.csdn.net/zhizhuxy999/article/details/90442600方法,部分步驟由於版本變化,進行了調整。 2、基本概念 编程语言/编译器:Python。Python的特点是“用最少的代码干最多的事”。Python 2即在2020年停止更新,所以现在学习Python 3是最好的选择。 P

    2023年04月18日
    浏览(85)
  • python pytorch-GPU 环境搭建 (CUDA 11.2)

    如下图所示,为 pytorch 或 tensorflow 的环境搭建逻辑 一般情况下,我们需要按照如下顺序考虑我们该安装哪个版本的 cuda 以及 安装哪个版本的 pytorch 通过下述cmd命令行 如果已安装cuda,则如下图所示,可知悉安装的cuda版本 1. 通过以下cmd命令行获悉 最高能安装的cuda版本 结果如

    2024年02月06日
    浏览(47)
  • linux如何查看编译器支持的C++版本(支持C++11、支持C++14、支持C++17、支持C++20)(编译时不指定g++版本,默认使用老版本编译)

    C++11 C++11是一个重要的C++标准版本,于2011年发布。C++11带来了许多重要的改进,包括: 智能指针:引入了shared_ptr和unique_ptr等智能指针,用于更好地管理动态内存分配。 新的循环语句:引入了for循环中的范围语法,以更简洁的方式遍历容器。 初始化列表:允许使用初始化列表

    2024年02月02日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包