anaconda安装paddle(安装CUDA,CUDNN)

news2024/11/24 16:47:00

前言

为什么会写这样一篇呢,应该早晚会用到paddlelite,所以paddle还是要学的,与其在飞桨平台上跑,不如在自己电脑上跑。我以为安装paddle只需要三行代码:

# 打开Anaconda Prompt
conda create -n paddle python=3.9
conda activate paddle
python -m pip install paddlepaddle-gpu==2.4.0.post116 -f https://www.paddlepaddle.org.cn/whl/windows/mkl/avx/stable.html

然后就可以快乐地荡起飞桨……

实则

1.安装paddle

前两步不变,python版本看你安装的版本。

# 打开Anaconda Prompt
conda create -n paddle python=3.9
conda activate paddle

关于如何选择适合自己版本的paddle,打开cmd命令窗口,输入nvidia-smi,红框中表示你可以适配的最高版本,可以选择11.2,但我个人喜欢最新的,有问题也用最高版本的。

在这里插入图片描述

然后进入飞桨官网选择合适版本复制命令安装。

在这里插入图片描述

然后执行以下命令,验证是否安装成功:

python
import paddle
paddle.utils.run_check()

如果你安装了CUDA,CUDNN,到这里一般就结束了。我是没安装的那种,但我并不认为我没有安装,因为之前安装过pytorch时,我记得安装了CUDA,跑了深度学习也没问题,所以我就没往这方面想,也不认为是版本的问题,报错如下:

Running verify PaddlePaddle program ...
W1201 16:34:44.189872 20796 gpu_resources.cc:61] Please NOTE: device: 0, GPU Compute Capability: 8.6, Driver API Version: 11.6, Runtime API Version: 11.6
W1201 16:34:44.190871 20796 dynamic_loader.cc:278] Note: [Recommend] copy cudnn into CUDA installation directory.
 For instance, download cudnn-10.0-windows10-x64-v7.6.5.32.zip from NVIDIA's official website,
then, unzip it and copy it into C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0
You should do this according to your CUDA installation directory and CUDNN version.
…………
PreconditionNotMetError: The third-party dynamic library (cudnn64_8.dll) that Paddle depends on is not configured correctly. (error code is 126)
     Suggestions:
     1. Check if the third-party dynamic library (e.g. CUDA, CUDNN) is installed correctly and its version is matched with paddlepaddle you installed.
     2. Configure third-party dynamic library environment variables as follows:
     - Linux: set LD_LIBRARY_PATH by `export LD_LIBRARY_PATH=...`
     - Windows: set PATH by `set PATH=XXX; (at ..\paddle\phi\backends\dynload\dynamic_loader.cc:305)
     [operator < fill_constant > error]  

翻译过来:

正在运行验证飞桨程序。。。

W1201 16:34:44.189872 20796 gpu资源。cc:61]请注意:设备:0GPU计算能力:8.6,驱动程序API版本:11.6,运行时API版本:11.6

W1201 16:34:44.190771 20796动态加载器。cc:278]注意:[建议]将cunn复制到CUDA安装目录中。

例如,从NVIDIA官网下载cunn-10.0-windows10-x64-v7.6.5.32.zip,

然后,将其解压缩并复制到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0中

您应该根据CUDA安装目录和CUDNN版本执行此操作。



PreconditionNotMetError:Paddle依赖的第三方动态库(cudnn64_8.dll)未正确配置。(错误代码为126)

建议:

1.检查第三方动态库(如CUDACUDNN)是否安装正确,其版本是否与您安装的飞桨相匹配。

2.配置第三方动态库环境变量如下:

-Linux:通过`export LD_LIBRARY_PATH=`

-Windows:通过`set PATH=XXX;(位于..\plade\phi\backends\dynload\dynamic_loader.cc:305[运算符<fill_constant>错误]

接下来就是在信息的海洋里遨游的时刻,直到看到这段话,这是我的灯塔:

在这里插入图片描述
在这里插入图片描述

2.安装CUDA

进入官网选择合适版本下载:

在这里插入图片描述
在这里插入图片描述

选择自定义全部安装:

请添加图片描述
在这里插入图片描述
配置变量:

在这里插入图片描述

安装完成后进行验证,打开cmd命令窗口,输入nvcc -V:

在这里插入图片描述

3.安装CUDNN

进入官网,这个需要注册登录,选择合适版本下载,下载的是一个压缩包。

在这里插入图片描述

意外之喜:

在这里插入图片描述

然后解压该文件,将其复制到CUDA的v11.6文件下,有重复的直接替换。

在这里插入图片描述

4.黎明就在眼前

执行以下命令,验证是否可以用paddle:

python
import paddle
paddle.utils.run_check()

报错如下,这个应该就是CUDA和CUDNN某些地方不匹配吧,稳定的话还是选择低版本好。

Could not locate cudnn_ops_infer64_8.dll. Please make sure it is in your lib

解决方法:前往官网如下图所示位置下载一个zlib包,解压缩后找到zlibwapi.dll文件,剪切到C:\Windows\System32

在这里插入图片描述
在这里插入图片描述

5.破晓

在这里插入图片描述

学习照亮我的灯塔也翻译一下:

Running verify PaddlePaddle program ...
W1201 18:57:31.685199  5020 gpu_resources.cc:61] Please NOTE: device: 0, GPU Compute Capability: 8.6, Driver API Version: 11.6, Runtime API Version: 11.6
W1201 18:57:31.688201  5020 gpu_resources.cc:91] device: 0, cuDNN Version: 8.7.
PaddlePaddle works well on 1 GPU.
PaddlePaddle works well on 1 GPUs.
PaddlePaddle is installed successfully! Let's start deep learning with PaddlePaddle now.

正在运行验证飞桨程序。。。

警告...] 请注意:设备:0GPU计算能力:8.6,驱动程序API版本:11.6,运行时API版本:11.6

警告...] 设备:0,cuDNN版本:8.7。

飞桨在1GPU上运行良好。

飞桨在1GPU上运行良好。

飞桨安装成功!现在,让我们开始深入学习飞桨。

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

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

相关文章

C++异常及异常优缺点

&#x1f9f8;&#x1f9f8;&#x1f9f8;各位大佬大家好&#xff0c;我是猪皮兄弟&#x1f9f8;&#x1f9f8;&#x1f9f8; 文章目录一、C语言传统的处理错误的方式二、C异常1.throw catch2.异常的抛出和捕获3.异常的抛出和捕获原则4.函数调用链 异常 栈展开匹配原则5.异常的…

微信小程序怎样开发?【小程序开发】

说到微信小程序&#xff0c;很多公司企业商家都会有自己的微信小程序&#xff0c;已经是他们的标配了。那么还没有自己的微信小程序的小伙伴&#xff0c;也在筹备着开发小程序。那么微信小程序怎样开发的呢&#xff0c;今天就教大家一个比较简单的开发方法。 微信小程序怎样开…

Linux进程通信之共享内存

一、共享内存之原理 1.是在物理内存中开辟了一片空间&#xff1b; 2.不同的进程通过页表将物理内存空间映射到自己的进程虚拟地址空间之中 3.不同的进程可以通过操作自己的虚拟地址空间中的虚拟地址去操作共享内存&#xff08;物理地址&#xff09; 共享内存是最快的进程之间…

为什么计算机中的负数要用补码表示?

本文已收录到 AndroidFamily&#xff0c;技术和职场问题&#xff0c;请关注公众号 [彭旭锐] 提问。 前言 大家好&#xff0c;我是小彭。 在前面的文章里&#xff0c;我们聊到了计算机的冯诺依曼架构的 3 个基本原则。其中第 1 个原则是计算机中所有信息都是采用二进制格式的编…

【在Spring MVC框架中,关于限制请求方式】

目录 1.关于限制请求方式 2. 附&#xff1a;关于GET和POST请求方式 1.关于限制请求方式 在Spring MVC框架中&#xff0c;RequestMapping注解的主要作用是配置请求路径&#xff0c;除此以外&#xff0c;还可以配置请求方式&#xff0c;例如&#xff1a; RequestMapping(value…

【Linux常见指令1】

目录&#xff1a;前言常用指令ls指令whoami && pwdcdtouch &#xff08;触摸&#xff09;mkdir &#xff08;make directory&#xff09;rmdir && rm (remove)mv(move 移动)cp(copy 拷贝)stat &#xff08;统计&#xff09;nanoechogccman&#xff08;重要&…

如何在一台服务器同一个端口运行多个pgbouncer

PGbouncer是Postgresql数据库最常用的一款连接池软件&#xff0c;但是它是单进程的&#xff0c;所以只能占用一颗CPU资源&#xff0c;会造成CPU资源的浪费。PGbouncer有方法在同一台服务器的同一个端口运行多个进程实例&#xff0c;可以让资源得到充分利用。 先看下一个pgbounc…

【愚公系列】2022年12月 使用win11系统自带SSH,远程控制VMware中Liunx虚拟机系统

文章目录前言1.cpolar简介2.cpolar功能一、使用win11系统自带SSH&#xff0c;远程控制VMware中Liunx虚拟机系统1.注册cpolar账号2.下载最新版Ubuntu系统3.Ubuntu系统安装curl4.Ubuntu系统安装cpolar5.Ubuntu开启SSH6.WIN11测试SSH总结前言 身为开发人员&#xff0c;虚拟化系统…

Java基础之《netty(6)—NIO快速入门》

一、案例 1、编写一个NIO入门案例&#xff0c;实现服务器端和客户端之间的数据简单通讯&#xff08;非阻塞&#xff09; 2、目的&#xff1a;理解NIO非阻塞网络编程机制 3、代码 NIOServer.java package netty.niostart;import java.io.IOException; import java.net.InetSoc…

死锁问题【javaEE初阶】

什么是死锁&#xff1f; 所谓死锁&#xff0c;是指多个进程在运行过程中因争夺资源而造成的一种僵局&#xff0c;当进程处于这种僵持状态时&#xff0c;若无外力作用&#xff0c;它们都将无法再向前推进。 因此我们举个例子来描述&#xff0c;如果此时有一个线程A&…

【pen200-lab】10.11.1.217

pen200-lab 学习笔记 【pen200-lab】10.11.1.217 &#x1f525;系列专栏&#xff1a;pen200-lab &#x1f389;欢迎关注&#x1f50e;点赞&#x1f44d;收藏⭐️留言&#x1f4dd; &#x1f4c6;首发时间&#xff1a;&#x1f334;2022年11月30日&#x1f334; &#x1f36d;作…

node.js的认识与安装

一、node.js的认识 &#x1f4d6; 简单的说 Node.js 就是运行在服务端的 JavaScript。 Node.js 是一个基于 Chrome JavaScript 运行时建立的一个开源的、跨平台的JavaScript 运行时环境。 Node.js 是一个事件驱动 I/O 服务端 JavaScript 环境&#xff0c;基于 Google 的 V8 引…

ZMQ之脱机可靠性--巨人模式

当你意识到管家模式是一种非常可靠的消息代理时&#xff0c;你可能会想要使用磁盘做一下消息中转&#xff0c;从而进一步提升可靠性。这种方式虽然在很多企业级消息系统中应用&#xff0c;但我还是有些反对的&#xff0c;原因有&#xff1a; 1、我们可以看到&#xff0c;懒惰海…

【JS】数据结构之栈

文章目录基本介绍代码实现基本介绍 内存中的堆栈和数据机构中的堆栈不是一个概念&#xff0c;内存中的堆栈是真实存在的物理区&#xff0c;数据结构中的堆栈是抽象数据存储结构。 栈&#xff1a;是一种受限制的线性表。他遵循后进先出的原则&#xff08;LIFO&#xff09;其限制…

神仙级编程神器,吹爆

Visual Studio 编程领域公认的“最强IDE”&#xff0c;Visual Studio是目前最流行的Windows平台应用程序的集成开发环境&#xff0c;提供了高级开发工具、调试功能、数据库功能和创新功能&#xff0c;帮助在各种平台上快速创建当前最先进的应用程序&#xff0c;开发新的程序。 …

【ODX介绍】-5-用于Flash刷写的ODX-F文件概述

总目录:(单击下方链接皆可跳转至专栏总目录) 《UDS/OBD诊断需求编辑工具》总目录https://blog.csdn.net/qfmzhu/article/details/123697014 共9页精讲:在第二章节中,附上了一个完整的,且详细的ODX-F文件层级结构图。 目录 1 什么是ODX-F?

【在Spring MVC框架和Spring Boot项目中,控制器的响应结果】

目录 1. 控制器的响应结果 2. 相关配置 3. 使用枚举优化代码 1. 控制器的响应结果 当控制器处理了请求之后&#xff0c;向客户端响应的结果中&#xff0c;应该至少包含&#xff1a; 业务状态码&#xff1a;通常是数值类型的&#xff0c;客户端可以根据此数值来判断操作成功…

docke部署nodejs程序及Dockerfile详解

目录参考一、Dockerfile二、部署1、程序结构2、新建Dockerfile3、新建.dockerignore4、构建镜像5、创建容器6、关闭镜像参考 重点参考&#xff1a;把一个 Node.js web 应用程序给 Docker 化 Docker部署Node.js的方法步骤&#xff08;nodejs docker部署&#xff09; 一、Docke…

Linux服务器启动tomcat的三种方式

直接进入主题&#xff0c;首先cd进入tomcat的bin文件夹下&#xff0c;然后可以尝试以下三种启动方式&#xff1a; 第一种&#xff08;当前会话启动&#xff09;&#xff1a; ./startup.sh 效果: 然后tomcat就在后台启动了&#xff0c;我们还可以在当前会话中继续输入其它指令…

PHP基于thinkphp的网上书店管理系统#毕业设计

本论文主要论述了如何使用php语言开发一个网上图书管理系统&#xff0c;本系统将严格按照软件开发流程进行各个阶段的工作&#xff0c;面向对象编程思想进行项目开发。在引言中&#xff0c;将论述网上图书管理系统的当前背景以及系统开发的目的&#xff0c;后续章节将严格按照软…