新版本GPU加速的tensorflow库的配置方法

news2024/11/15 17:18:48

  本文介绍在Anaconda环境中,配置可以用GPU运行的Python新版tensorflow库的方法。

  在上一篇文章Anaconda配置Python新版本tensorflow库(CPU、GPU通用)的方法(https://blog.csdn.net/zhebushibiaoshifu/article/details/129285815)中,我们详细介绍了CPUGPU通用的新版tensorflow库的配置方法;本文就在这一篇文章的基础之上,继续介绍如果希望让GPU参与到计算中,我们该如何进一步配置对应的环境。如果大家此时还没有配置tensorflow库,那么就先将前述这一篇文章的流程完成后,再继续本文的步骤即可。

  前面我们提到,当时虽然已经配置完毕了新版tensorflow库,但是如果运行代码,还是会出现如下图所示的提示信息,即我们还没有配置好GPU运行的环境。

在这里插入图片描述

  其中,如果大家的电脑上是没有GPU,或者就不需要用GPU加以计算,那就不用管这个问题,直接开始编写、运行机器学习的代码就好了;但是对于电脑中有GPU并且也希望让GPU加入运算的用户而言,就需要加以进一步的配置工作。具体流程如下。

1 系统版本要求

  如果需要用本文所述的GPU环境配置方法,需要保证Windows操作系统的版本在19044及以上;如果不满足这一条件,除了升级系统,就只能通过早期版本的tensorflow库来实现GPU运算了。

2 GPU设置

  首先,我们需要打开Anaconda Prompt软件;随后,可以输入如下所示的代码,从而查看我们的GPU状态。

nvidia-smi

  运行上述代码后,如下图所示,即为我们的GPU状态。如果无法出现如下图所示的信息,则很大概率是没有安装驱动(NVIDIA Driver),大家可以到其官方网站中下载。

在这里插入图片描述

  随后,我们即可配置CUDAcuDNN;其中CUDANVIDIA为其生产的GPU所研发的一种并行计算架构,而cuDNN则是NVIDIA专门为深度神经网络运行而提供的一个加速库。这二者目前网上很多教程是通过手动到NVIDIA官方网站上下载、安装的,相对较为麻烦;而这里我们既然已经用了新版本的tensorflow库,那么就可以直接在命令行实现二者的下载与配置。

  我们输入如下所示的代码。

conda install -c conda-forge cudatoolkit=11.2 cudnn=8.1.0

  随后,运行上述代码,如下图所示。

在这里插入图片描述

  随后,输入y,即可确认开始下载、配置CUDAcuDNN。稍等片刻,出现如下图所示的情况,说明二者已经配置完毕。

在这里插入图片描述

  至此,CUDAcuDNN的设置已经完毕。但是,为了让这二者可以正常使用,我们还需要配置系统路径。关于这一步的内容,大家可以直接用管理员身份打开Windows PowerShell软件来进行配置,如下图所示。

在这里插入图片描述

  随后,分别输入并运行以下两句代码。

mkdir -p $CONDA_PREFIX/etc/conda/activate.d
echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CONDA_PREFIX/lib/' > $CONDA_PREFIX/etc/conda/activate.d/env_vars.sh

  运行后如下图所示。

在这里插入图片描述

  至此,就完全完成了GPU方面的配置工作。

3 WSL2配置

  此外,我们还需要配置WSL2WSL是“适用于Linux 的Windows 子系统”,我们需要配置这一环境,为后面的GPU运算提供条件。

  关于WSL2的介绍与手动配置方法,大家可以直接查看其官方网站;我们这里就介绍通过命令行的简单的配置方法。

  首先,依然是在管理员身份打开的Windows PowerShell软件中,我们输入如下所示的代码。

wsl --install

  随后,即可开始安装WSL2;稍等片刻,出现如下图所示的提示,说明WSL2已经配置完毕;此时,需要重启一次电脑。

在这里插入图片描述

4 配置结果验证

  至此,已经完成了GPU运算所需要的全部配置步骤。如果大家是在一个新的虚拟环境中配置的上述内容,就可以按照文章Anaconda为虚拟环境安装第三方库与Spyder等软件的方法(https://blog.csdn.net/zhebushibiaoshifu/article/details/128334627)提到的方法,安装一个Spyder软件,方便后续代码的撰写。

  随后,在编辑器中输入如下的代码。

import tensorflow as tf
print(tf.config.list_physical_devices("GPU"))

  如下图所示。

在这里插入图片描述

  运行上述代码后,如果出现如下图所示的输出结果,就表明程序可以找到电脑中的GPU,即前述全部配置工作是没有问题的;大家就可以开始撰写机器学习的各类代码,并用GPU加速运行了。

在这里插入图片描述

  此外,这里还有一种不推荐的检验方法。大家还可以输入以下的代码。

import tensorflow as tf
tf.test.is_gpu_available() 

  这也是一种检验GPU是否可用的方法,但是如下图所示,这种方法马上就要被淘汰了,因此建议还是用上面提到的方法来测试。如果出现如下图所示的True字样,就说明配置没有问题。

在这里插入图片描述

  至此,大功告成。

欢迎关注:疯狂学习GIS

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

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

相关文章

【分布式】10张图带你彻底搞懂限流、熔断、服务降级

文章目录1 限流1.1 限流指标1.1.1 TPS1.1.2 HPS1.1.3 QPS1.2 限流方法1.2.1 流量计数器1.2.2 滑动时间窗口1.2.3 漏桶算法1.2.4 令牌桶算法1.2.5 分布式限流1.2.6 hystrix限流1.2.6.1 信号量限流1.2.6.2 线程池限流2 熔断2.1 断路器的状态2.2 需要考虑的问题2.3 使用场景3 服务…

游戏开发是个“坑”,而且是个“天坑”

本文首发于CSDN公众号 作者 | 开发游戏的老王 责编 | 梦依丹 出品 | CSDN(ID:CSDNnews) 各位游戏开发者大家好,我是开发游戏的老王,一名游戏开发者同时也是一名高校游戏方向的主讲教师,从事游戏开发及相关教…

HTTP缓存从入门到踹门

1 与缓存相关的字段Expires:缓存的绝对过期时间Cache-Control:缓存的相对过期时间Last-Modified:缓存上一次修改的时间(服务端保存)If-Modified-Since:缓存上一次修改的时间(客户端保存&#xf…

第十一届蓝桥杯省赛——2解密

题目:【问题描述】小明设计了一种文章加密的方法:对于每个字母 c,将它变成某个另外的字符 Tc。下表给出了字符变换的规则:字母cTc字母cTc字母cTc字母cTcaynlAYNLbxogBXOGcmpoCMPOddquDDQUearfEARFfcssFCSSgitzGITZhkupHKUPinvwINV…

【ArcGIS Pro二次开发】(11):面要素的一键拓扑

在工作中,经常需要对要素进行拓扑检查。 在ArcGIS Pro中正常的工作流程是在数据库中【新建要素数据集——新建拓扑——将要素加入拓扑——添加规则——验证】,工作流程不算短,操作起来比较繁琐。 下面以一个例子演示如何在ArcGIS Pro SDK二次…

数组一次性删除多条数据

需求描述 最后提交时删除表格中的空行 实现方法 单行删除 - 并不是一次性删除 表格每行的最后设置删除按钮&#xff0c;点击时将当前行的索引传递给方法&#xff0c;splice 删除当前行。 <el-table :data"tableData" class"myTable" border>..…

爬虫实战进阶版【1】——某眼专业版实时票房接口破解

某眼专业版-实时票房接口破解 某眼票房接口:https://piaofang.maoyan.com/dashboard-ajax 前言 当我们想根据某眼的接口获取票房信息的时候,发现它的接口处的参数是加密的,如下图: 红色框框的参数都是动态变化的,且signKey明显是加密的一个参数。对于这种加密的参数,我们需要…

第14届蓝桥杯STEMA测评真题剖析-2023年2月12日Scratch编程初中级组

[导读]&#xff1a;超平老师的《Scratch蓝桥杯真题解析100讲》已经全部完成&#xff0c;后续会不定期解读蓝桥杯真题&#xff0c;这是Scratch蓝桥杯真题解析第103讲。 蓝桥杯选拔赛现已更名为STEMA&#xff0c;即STEM 能力测试&#xff0c;是蓝桥杯大赛组委会与美国普林斯顿多…

域权限维持之创建DSRM后门

DSRM&#xff08;目录服务还原模式&#xff09;&#xff0c;在初期安装域控的时候会让我们设置DSRM的管理员密码&#xff0c;这个密码是为了在后期域控发生问题时修复、还原或重建活动目录。DSRM账户实际上是administrator账户&#xff0c;并且该账户的密码在创建之后很少使用。…

Azure OpenAI 官方指南 01|GPT-3 的原理揭秘与微调技巧

Azure OpenAI 服务在微软全球 Azure 平台正式发布后&#xff0c;迅速成为众多用户最关心的服务之一。 Azure OpenAI 服务允许用户通过 REST API 访问 OpenAI 的强大语言模型&#xff0c;包括 GPT-3、Codex 和 Embeddings 模型系列。本期&#xff0c;我们将为您揭秘 Azure Open…

乌班图安装kvm并配置网络

乌班图22安装KVM 1.安装KVM sudo apt install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virt-manager virtinstsudo adduser id -un libvirt sudo adduser id -un kvm sudo apt install virtinst qemu-efi sudo systemctl enable --now libvirtd sudo s…

Tcl_Init error: Can‘t find a usable init.tcl in the following directories

目录 问题 解决 小结 问题 最近在研究开源波形显示软件gtkwave时,Ubuntu18.04下编译打包完成,移植到另一个电脑上运行时,出现以下错误,如图: 擦掉的部分是一些路径信息,这个错误提示意味着您的系统中缺少所需的 Tcl 初始化文件,路径下确实没有init.tcl文…

嵌入式 LVGL移植到STM32F4

目录 LVGL简介 1、特点 2、LVGL的硬件要求 3、相关网站 4、LVGL源码下载 5、LVGL移植要求 5.1 移植过程-添加源码 2、更改接口文件 3、显示实现 4、添加外部中文字体的方法 5、编译下载后有几种情况 6、调用显示 6、GUI-Guider使用 6.1 安装软件 6.2 使用…

Kakfa详解(一)

kafka使用场景 canal同步mysqlelk日志系统业务系统Topic kafka基础概念 Producer: 消息生产者&#xff0c;向kafka发送消息Consumer: 从kafka中拉取消息消费的客户端Consumer Group: 消费者组&#xff0c;消费者组是多个消费者的集合。消费者组之间互不影响&#xff0c;所有…

Wireshark+Go捕获本地TCP通信

初学计网&#xff0c;使用Wireshark观察本地端口间TCP通信过程。 目录 步骤1&#xff1a; 步骤2&#xff1a; 步骤3&#xff1a; 步骤1&#xff1a; 使用go语言搭建本地客户端与服务器TCP通信&#xff0c;测试完成后在步骤2先运行服务器&#xff0c;再运行客户端。 服务器…

C语言查漏补缺(进阶)volatile、__attribute__、void*、地址对齐、$$Super$main

最近在学习RT-Thread&#xff0c;在看其源码的时候发现了许多自己不太了解的C语言知识点&#xff0c;在此查漏补缺一下。 1. 关键字 volatile volatile是C90新增关键字&#xff0c;volatile的的中文意思是adj.易变的&#xff1b;无定性的&#xff1b;无常性的&#xff1b;可…

如何使用FarsightAD在活动目录域中检测攻击者部署的持久化机制

关于FarsightAD FarsightAD是一款功能强大的PowerShell脚本&#xff0c;该工具可以帮助广大研究人员在活动目录域遭受到渗透攻击之后&#xff0c;检测到由攻击者部署的持久化机制。 该脚本能够生成并导出各种对象及其属性的CSV/JSON文件&#xff0c;并附带从元数据副本中获取…

Python|每日一练|递归|数学|数组|动态规划|树|深度优先搜索|单选记录:排列序列|三角形最小路径和|求根节点到叶节点数字之和

1、排列序列&#xff08;递归&#xff0c;数学&#xff09; 给出集合 [1,2,3,...,n]&#xff0c;其所有元素共有 n! 种排列。 按大小顺序列出所有排列情况&#xff0c;并一一标记&#xff0c;当 n 3 时, 所有排列如下&#xff1a; "123""132""213…

webpack基本使用和开发环境配置

目录 1 webpack 基本使用 01 webpack 简介 02 webpack 初体验 2 webpack开发环境配置 03 打包样式资源 04 打包html资源 05 打包图片资源 06 打包其他资源&#xff08;以打包icon为例&#xff09; 07 devServer 08.开发环境配置 1 webpack 基本使用 由于笔记文档没有…

批量下载Landsat遥感影像的方法

本文介绍在USGS网站批量下载Landsat系列遥感影像的方法。首先打开EarthExplorer的官网&#xff0c;首先完成注册与登录。接下来点击左侧“Search Criteria”&#xff0c;首先选择研究区域。研究区域的划定有多种方法&#xff0c;可以依据地理名称选定研究区域&#xff0c;也可以…