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

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

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

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

  这里需要注意,tensorflow库在2.11及以上的版本中,都取消了对Windows平台的GPU支持(我试了一下,就算装了WSL也不行);而在撰写本文时,用的是2.6.2版本的tensorflow库,因此是没有问题的。所以大家如果装了2.10及以下版本的tensorflow库,就继续向后看本文即可;如果此时已经装了2.11及以上版本的tensorflow库,那么可以首先通过如下的代码将tensorflow库更换为2.10版本的(执行这一代码时,将自动删除原有的2.11及以上版本的tensorflow库),再继续看本文。

pip install --user "tensorflow<2.11"

  前面我们提到,当时虽然已经配置完毕了新版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

相关实践学习
部署Stable Diffusion玩转AI绘画(GPU云服务器)
本实验通过在ECS上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。
相关文章
|
8月前
|
并行计算 TensorFlow 算法框架/工具
Windows11+CUDA12.0+RTX4090如何配置安装Tensorflow2-GPU环境?
本文介绍了如何在Windows 11操作系统上,配合CUDA 12.0和RTX4090显卡,通过创建conda环境、安装特定版本的CUDA、cuDNN和TensorFlow 2.10来配置TensorFlow GPU环境,并提供了解决可能遇到的cudnn库文件找不到错误的具体步骤。
1163 3
|
8月前
|
TensorFlow 算法框架/工具 异构计算
【Tensorflow 2】查看GPU是否能应用
提供了检查TensorFlow是否能应用GPU的方法。
176 2
|
8月前
|
持续交付 测试技术 jenkins
JSF 邂逅持续集成,紧跟技术热点潮流,开启高效开发之旅,引发开发者强烈情感共鸣
【8月更文挑战第31天】在快速发展的软件开发领域,JavaServer Faces(JSF)这一强大的Java Web应用框架与持续集成(CI)结合,可显著提升开发效率及软件质量。持续集成通过频繁的代码集成及自动化构建测试,实现快速反馈、高质量代码、加强团队协作及简化部署流程。以Jenkins为例,配合Maven或Gradle,可轻松搭建JSF项目的CI环境,通过JUnit和Selenium编写自动化测试,确保每次构建的稳定性和正确性。
105 0
|
8月前
|
UED 存储 数据管理
深度解析 Uno Platform 离线状态处理技巧:从网络检测到本地存储同步,全方位提升跨平台应用在无网环境下的用户体验与数据管理策略
【8月更文挑战第31天】处理离线状态下的用户体验是现代应用开发的关键。本文通过在线笔记应用案例,介绍如何使用 Uno Platform 优雅地应对离线状态。首先,利用 `NetworkInformation` 类检测网络状态;其次,使用 SQLite 实现离线存储;然后,在网络恢复时同步数据;最后,通过 UI 反馈提升用户体验。
214 0
|
8月前
|
并行计算 TensorFlow 算法框架/工具
Window安装TensorFlow-GPU版本
Window安装TensorFlow-GPU版本
148 0
|
9月前
|
Linux TensorFlow 算法框架/工具
安装GPU版本的TensorFlow
【7月更文挑战第3天】安装GPU版本的TensorFlow。
348 1
|
8月前
|
编译器 Linux TensorFlow
【Deepin 20系统】Tensorflow2.x离线下载cifar-10-python.tar.gz如何配置使用cifar10.load_data()
文章讨论了在Deepin 20系统上使用Tensorflow 2.x时,如何通过离线方式配置使用CIFAR-10数据集。
105 0
|
9月前
|
机器学习/深度学习 PyTorch TensorFlow
在深度学习中,数据增强是一种常用的技术,用于通过增加训练数据的多样性来提高模型的泛化能力。`albumentations`是一个强大的Python库,用于图像增强,支持多种图像变换操作,并且可以与深度学习框架(如PyTorch、TensorFlow等)无缝集成。
在深度学习中,数据增强是一种常用的技术,用于通过增加训练数据的多样性来提高模型的泛化能力。`albumentations`是一个强大的Python库,用于图像增强,支持多种图像变换操作,并且可以与深度学习框架(如PyTorch、TensorFlow等)无缝集成。
|
9月前
|
机器学习/深度学习 TensorFlow API
Keras是一个高层神经网络API,由Python编写,并能够在TensorFlow、Theano或CNTK之上运行。Keras的设计初衷是支持快速实验,能够用最少的代码实现想法,并且能够方便地在CPU和GPU上运行。
Keras是一个高层神经网络API,由Python编写,并能够在TensorFlow、Theano或CNTK之上运行。Keras的设计初衷是支持快速实验,能够用最少的代码实现想法,并且能够方便地在CPU和GPU上运行。
|
11月前
|
Ubuntu Shell Docker
GPU_nvidia-container-toolkit安装和配置
GPU_nvidia-container-toolkit安装和配置
2423 1

热门文章

最新文章

下一篇
oss创建bucket