NVIDIA RTX3090上安装tensorflow-gpu 1.12.0

news2025/7/16 8:37:49

目录

项目场景:

问题描述1

CUDA版本不匹配,需要重新安装

解决方案1:

额外安装其他版本的CUDA,并实现版本自由切换。

问题描述2:

1. cuDNN包解压后的cudnn.h文件无法复制到目标文件夹中

2. 如何查看是否会到最初版本的CUDA

解决方案2:

1. cudnn.h无法复制

2. 回到最初版本的CUDA

问题描述3:

tensorflow-gpu 1.12.0安装不断出现意外

解决方案3:

1. 方式一(更推荐方式二,下载速度翻倍)

 2. 方式二

最终测试



项目场景:

现在需要在3090显卡上运行一个tensorflow 1.x的程序,具体配置如下:

版本选择越新越好,因此选择安装tensorflow-gpu 1.12.0。在安装的过程中,陆续会碰到三个问题,我将在下面依次列出并给予解答。


问题描述1

CUDA版本不匹配,需要重新安装

在安装tensorflow-gpu 1.12.0之前,需要查看该版本的tensorflow所需搭配的CUDA 和cuDNN版本如下:

使用nvidia-smi命令查看当前CUDA版本为11.2:

因此需要在非root条件下,为当前用户额外安装CUDA 9.0和对应的cuDNN 7.1,否则tensorflow 1.12.0根本无法使用。例如,在python交互式命令行中引入tensorflow如下:

import tensorflow

会得到以下报错信息:

这就提示我们需要在CUDA 9.0的环境下才能正常使用tensorflow-gpu 1.12.0。


解决方案1:

额外安装其他版本的CUDA,并实现版本自由切换。

强烈推荐这篇博客:

非root用户在linux下安装多个版本的CUDA和cuDNN(cuda 8、cuda 10.1 等)_随性拂尘倾心的博客-CSDN博客按照他的步骤去做就能很顺利地在多个CUDA版本间自由切换了。


问题描述2:

按照上述博客安装其他版本的CUDA和cuDNN时,在最后的文件配置阶段会遇到两个问题:

1. cuDNN包解压后的cudnn.h文件无法复制到目标文件夹中

在执行第一句话时,系统会提示权限不够(Permission Denied)。

2. 如何查看是否会到最初版本的CUDA

        正如作者所述,想要在多个版本的CUDA之间自由切换,只需每次修改bashrc文件并重新读取配置文件即可,再用nvcc -V指令就能看到CUDA版本在不断变化。但是,这种方式只能看到CUDA版本在额外安装的CUDA之间来回变化,当我们将先前添加的所有export语句都注释并使用source .bashrc重新读取配置文件以后,再使用nvcc -V查看,会发现此时显示的CUDA版本仍然是最后一次选择的CUDA版本,并非原始的CUDA 11.2。


 

解决方案2:

1. cudnn.h无法复制

        在目标文件夹下同样可以找到一个cudnn.h文件, 该文件是只读文件,因此无法复制替换。此时先将该文件手动删除,再将源文件夹下的cudnn.h文件复制过来即可。

2. 回到最初版本的CUDA

 此时需要将当前窗口关闭后重新打开,再使用nvcc -V命令会得到以下信息:

这个时候反而证明CUDA版本回到11.2了。我们还可以进一步做如下尝试进行验证:

在python交互式界面中输入以下语句:

import tensorflow

会得到报错信息:

提示我们需要在CUDA 9.0环境下使用tensorflow,恰好证明我们现在回到了最初的CUDA 11.2 。当然,这种验证方法需要在安装tensorflow之后才能使用。


 

问题描述3:

tensorflow-gpu 1.12.0安装不断出现意外

我们尝试使用pip命令自动安装tensorflow-gpu 1.12.0。我们使用如下命令进行安装:

python -m pip --default-timeout=6000 install --upgrade -i https://pypi.tuna.tsinghua.edu.cn/simple tensorflow-gpu==1.12.0 --no-cache-dir

但是仍然不能避免出现版本问题,如:

[ERROR] THESE PACKAGES DO NOT MATCH THE HASHES FROM THE REQUIREMENTS FILE

并且,清华镜像源下载速度十分慢;中科大镜像源虽然速度很快,但在安装好tensorflow,并在接下来安装其他附加组件时,会出现找不到匹配包的问题;其他镜像源(如阿里、豆瓣、中科院)更是直接找不到tensorflow-gpu 1.12.0版本的安装包。


解决方案3:

直接在本地下载tensorflow-gpu 1.12.0的安装包,上传到服务器后使用pip进行安装。

1. 方式一(更推荐方式二,下载速度翻倍)

安装包可以在pypi的官网上进行下载:tensorflow-gpu · PyPI

首先选择目标版本:

选择下载文件:

选择对应python3.6版本的安装包:

 2. 方式二

安装包可以在阿里云镜像源中进行下载:Links for tensorflow-gpu。在Pypi中下载速度以KB/s为单位,而在镜像源中下载以MB/s为单位。

选择目标安装包下载:


 

 下载到本地后,上传到服务器中:

再使用pip命令进行安装:

pip install tensorflow_gpu-1.12.0-cp36-cp36m-manylinux1_x86_64.whl

 


最终测试

  1.  将CUDA版本切换成CUDA 9.0。
  2. 在python交互界面中输入:
import tensorflow as tf 

sess = tf.Session() 
a = tf.constant(1) 
b = tf.constant(1) 
print(sess.run(a+b)) 

 参考:测试TensorFlow 是否安装成功_zqx951102的博客-CSDN博客_测试tensorflow是否安装成功

 得到输出结果为:

即表明安装成功 。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/38070.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

计算机系统基础期末复习

C语言代码如下&#xff1a; void fun(int n){ int x n*12;int y n/32; }请将其中计算的部分优化为位运算、移位运算和加法运算的结合。 x n8n4 (n<<3)(n<<2) x (n(n>>31) & 0x1F)>>5 设32位的位串为x(x类型为unsigned int)&#xff0c;现要…

python dingding --- 钉钉机器人API

dingding — 钉钉机器人 github 源码地址&#xff1a;https://github.com/zly717216/dingding 一、模块介绍 版本号 dingding: V1.0.0 功能 当前版本支持群机器人相关API调用&#xff0c;包括发送文本消息、文本链接、markdown、整体跳转 ActionCard、独立跳转 ActionCar…

【MindSpore】DCGAN生成漫画头像-----利用华为云modelarts云终端实现

前言 本人对于 mindspore 一点也不熟悉 但是 对于 学习新事物的心情和动力 一直都很澎湃 本次参加 mindSpore 的 DCGAN生成漫画头像 社区活动&#xff0c;希望能够增长见识 关注 证明图 使用工具 我直接使用的 mindSpore 提供的在线云环境 的终端来 体验 这一次的任务训练 …

【Autopsy数字取证篇】Autopsy数字取证软件的下载安装与优化配置

【Autopsy数字取证篇】Autopsy数字取证软件的下载安装与优化配置 Autopsy是一款免费开源的优秀数字取证&#xff08;Digital Forensics&#xff09;软件&#xff0c;提供与其他数字取证工具相同的核心功能&#xff0c;并提供其他商业工具不提供的其他基本功能&#xff0c;例如…

video元素与audio元素详解

1.video/audio属性 video元素和audio元素是HTML5中针对视频新增的两个标签&#xff0c;通过对这两个标签进行设置&#xff0c;可以控制页面的 上的音视频的播放。 1.src 属性 设置音/视频文件的URL地址。相关使用代码如下: <video src"movie.mp4"></vide…

【面试】揭秘面试背后的那点真实

注&#xff1a;最后有面试挑战&#xff0c;看看自己掌握了吗 文章目录前言/背景面试流程资料总结/刷题指南个人经验总结寄语&#x1f338;I could be bounded in a nutshell and count myself a king of infinite space. 特别鸣谢&#xff1a;木芯工作室 、Ivan from Russia 金…

【Windows编程】windows窗口创建过程详解

文章目录前言1 应用程序的分类2 应用程序分类的对比3 编译工具4 windows库文件和头文件5 WinMain函数和MessageBox函数初始6 窗口类7 窗口类的分类8 注册窗口类函数9 注册窗口类的结构体10 注册全局和局部窗口类11 创建窗口的函数12 创建一个windows的过程步骤13 创建一个子窗口…

C语言文件操作——打开 关闭 顺序读写 随机读写

1.文件的打开和关闭 1.1 文件指针 在打开一个文件的时候&#xff0c;会创建一个文件信息区&#xff0c;而文件指针指向的内容就是文件信息区。 文件信息区中存储的到底是什么内容的&#xff0c;我们可以在VS2013中查看一下文件信息区的内容(不同编译器下有所差异)。 struct …

shell脚本的条件判断2:文件属性的判断与比较

一 文件属性的判断与比较 Shell支持大量对文件属性的判断&#xff0c;常用的文件属性操作符很多&#xff0c;如下表所示。更多文件属性操作符可以参考命令帮助手册&#xff08;man test&#xff09;。 二 实例 实例&#xff1a;文件和目录判断 可以创建新的文件&#xff0c;…

属性值最大长度为30个字符(15个汉字)

上图是一位做成人用品店主反馈的问题&#xff0c;查看发过来的错误列表后&#xff0c;发现这份错误列表主要是有两个问题&#xff1a;一、属性值最大长度为30个字符(15个汉字)&#xff1b;二、手机端宝贝描述中每张图片的宽要在480到1500之间&#xff0c;最大高度为2500, 以下图…

深度学习之路=====11=====>>ShuffleNet(tensorflow2)

简介 来源&#xff1a;CVPR2017 作者&#xff1a;张祥雨&#xff0c;西安交通大学本硕博&#xff0c;原微软亚洲研究院研究员 特点 逐点分组卷积&#xff08;pointwise group conv)&#xff1a;使用了kernel_size1的分组卷积&#xff0c;大大降低模型参数量和计算量深度卷积…

阅读书《电子电路原理》截取的一些最核心的思想,找了个课程上海交通大学 郑益慧主讲做辅助(保证基本的理解是对的)。电路要以基本特性为基础从设计角度理解

一、戴维南 和 诺顿 物理量 过程戴维南等效诺顿等效步骤 l将负载电阻开路将负载电阻短路步骤 2计算或测量开路电 压&#xff0c; 即戴维南电压计算或测量短路电流&#xff0c;即诺顿电流步骤 3将电压源短路&#xff0c;电流源开路将电压源短路&#xff0c;电流源开路&#xff…

学生网页课程设计期末作业 HTML+CSS+JavaScript甜品蛋糕网页设计(5页)

&#x1f380; 精彩专栏推荐&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb; ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 &#x1f482; 作者主页: 【主页——&#x1f680;获取更多优质源码】 &#x1f393; web前端期末大作业…

如何使用 Nginx 部署 React App 到 linux server

油鹳视频&#xff1a;How To Deploy A React App - Using NGINX & Linux https://www.youtube.com/watch?vKFwFDZpEzXY&t547s 1. 获得一个 linux server 方法很多种&#xff0c;例如 aws EC2 , 阿里云 ECS &#xff0c; linode 等 2. 登录远程服务器并设置服务器 命…

二十八、CANdelaStudio实践-10服务(SessionControl)

本专栏将由浅入深的展开诊断实际开发与测试的数据库编辑,包含大量实际开发过程中的步骤、使用技巧与少量对Autosar标准的解读。希望能对大家有所帮助,与大家共同成长,早日成为一名车载诊断、通信全栈工程师。 本文介绍10服务(DiagnosticSessionControl)的查看与编辑,欢迎…

看我如何连夜自建网站背刺我的求职对手们

摘要&#xff1a;在竞争如此激烈的当下&#xff0c;作为一名IT新人&#xff0c;怎么才能让HR眼前一亮&#xff0c;从万千简历中脱颖而出成为最亮的那个崽呢&#xff1f;本文分享自华为云社区《【一行代码秒上云】连夜自建网站背刺我的求职对手们 &#xff01;》&#xff0c;作者…

红队隧道加密之OpenSSL加密反弹Shell(一)

前言 在红队的后渗透阶段中, 往往需要反弹shell进行下一步的内网横向渗透, 而这种反弹shell大多数都有一个缺点, 那就是其传输的流量都是明文传输, 相当容易被内网的防火软件所捕捉, 要是蓝队对此流量进行朔源分析, 很容易就能复现攻击的整个流程 例如此处用netcat反弹Shell进…

十、CANdelaStudio入门-States

本专栏将由浅入深的展开诊断实际开发与测试的数据库编辑,包含大量实际开发过程中的步骤、使用技巧与少量对Autosar标准的解读。希望能对大家有所帮助,与大家共同成长,早日成为一名车载诊断、通信全栈工程师。 本文介绍CANdelaStudio的States概念,欢迎各位朋友订阅、评论,可…

AcWing245. 你能回答这些问题吗 线段树详解

3.2线段树 例题分析 245. 你能回答这些问题吗 - AcWing题库 **题意&#xff1a;**给一条序列&#xff0c;如何动态维护区间的最大子段和&#xff0c;包括询问某区间的最大字段和和修改某个数。 分析&#xff1a;线段树struct保留什么信息。能否通过左右儿子的这些信息求出父…

HA RabbitMQ on K8s helm部署实战

RabbitMQ on K8s helm部署实战获取helm chart修改必要参数外部如何访问&#xff1f;安装rabbitmq登录管理界面导入mq metadata优化helm chart 生成的statefuleset yamlhelm chart 生成的pod yaml调整mq log等级promethrus 监控mq配置prometheus采集metrics查看prometheus rabbi…