深度学习环境安装与验证指南

news2024/9/29 1:15:27

目录

1. 项目背景

2. 系统与软件版本

2.1 操作系统与硬件

2.2 软件版本

2.3对应版本

3. 环境配置步骤

3.1 安装 Anaconda

3.2 创建虚拟环境

3.3 安装 CUDA 和 cuDNN

3.3.1 安装 CUDA 11.8

3.3.2 安装 cuDNN 8.6

3.3.3 验证 CUDA 和 cuDNN 安装

3.4 安装 TensorFlow

3.4.1 安装 TensorFlow 2.10.0

3.5 安装 PyTorch

3.5.1 安装带有 CUDA 支持的 PyTorch 2.4.0

3.6 性能测试

3.7 环境变量检查与设置

4. 结论


1. 项目背景

        本指南旨在帮助你在 Windows 11 上配置一个支持 GPU 加速的深度学习环境。我们将安装 CUDA 和 cuDNN(如果不需要GPU加速,就不用管CUDA 和 cuDNN),然后安装并验证 TensorFlow 和 PyTorch 的 GPU 加速支持。

2. 系统与软件版本

2.1 操作系统与硬件

操作系统: Windows 11 64-bit

GPU: NVIDIA GeForce GTX 1650

2.2 软件版本

Python 版本: 3.10.14

CUDA 版本: 11.8

cuDNN 版本: 8.6

TensorFlow 版本: 2.10.0

PyTorch 版本: 2.4.0

2.3对应版本

Python 版本TensorFlow 版本CUDA 版本cuDNN 版本PyTorch 版本
3.62.4.01181.7.0 - 1.7.1
3.6 - 3.82.5.011.28.11.8.0 - 1.8.1
3.6 - 3.92.6.011.28.11.9.0
3.6 - 3.92.7.011.28.11.10.0
3.6 - 3.92.8.011.2 - 11.38.1 - 8.21.11.0
3.7 - 3.102.9.011.2 - 11.68.1 - 8.41.12.0
3.7 - 3.102.10.011.2 - 11.68.1 - 8.41.13.0 - 2.0.0
3.8 - 3.102.11.011.2 - 11.78.1 - 8.52.0.0 - 2.1.0
3.8 - 3.102.12.011.2 - 11.78.1 - 8.52.1.0
3.8 - 3.112.13.011.88.62.4.0

说明

  • Python 版本:列出了不同的 Python 版本范围,与 TensorFlow 和 PyTorch 版本兼容。
  • TensorFlow 版本:列出了与每个 Python 版本兼容的 TensorFlow 版本。
  • CUDA 版本:列出了与 TensorFlow 版本兼容的 CUDA 版本。
  • cuDNN 版本:列出了与 CUDA 版本兼容的 cuDNN 版本。
  • PyTorch 版本:列出了与 Python 和 TensorFlow 版本兼容的 PyTorch 版本。

这张表格提供了一个清晰的版本兼容性指南,帮助你在配置深度学习环境时选择正确的版本组合。对应版本有时候可以也存在问题,需要你自己安装判断了。

3. 环境配置步骤

3.1 安装 Anaconda

详细的安装步骤:

Anaconda3简介与安装步骤-CSDN博客

下载 Anaconda:

访问 Anaconda 官网 并下载适合 Windows 64-bit 的版本。

安装 Anaconda:

运行下载的安装程序,按默认设置进行安装。

完成安装后,打开 Anaconda Prompt 以便于创建和管理虚拟环境。

3.2 创建虚拟环境

创建 Python 3.10 虚拟环境: 在 Anaconda Prompt 中,输入以下命令创建名为 py310 的虚拟环境:

conda create -n py310 python=3.10

激活虚拟环境: 激活新创建的虚拟环境:

conda activate py310

3.3 安装 CUDA 和 cuDNN

我的百度网盘提供,你也可以自行下载:
链接: https://pan.baidu.com/s/1i0Gqnsv7p5Xx96v6aH5l4g?pwd=e85q 提取码: e85q 复制这段内容后打开百度网盘手机App,操作更方便哦 
--来自百度网盘超级会员v6的分享

3.3.1 安装 CUDA 11.8

下载 CUDA:

访问 CUDA 11.8 下载页面 并下载适合你系统的安装包。

安装 CUDA:

运行安装包,并按提示完成安装。

确保将 CUDA 工具添加到系统的 PATH 环境变量中。通常,安装程序会自动完成此步骤。

3.3.2 安装 cuDNN 8.6

下载 cuDNN:

访问 NVIDIA cuDNN 下载页面 并下载与 CUDA 11.8 兼容的 cuDNN 版本。

安装 cuDNN:

解压下载的 cuDNN 压缩包。

将 bin、include 和 lib 文件夹中的内容复制到 CUDA 安装目录(如 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8)的对应文件夹中。

3.3.3 验证 CUDA 和 cuDNN 安装

验证 CUDA 安装:

打开命令提示符或 Anaconda Prompt,输入以下命令检查 CUDA 编译器 nvcc 是否可用:

nvcc --version

预期输出:

运行以下命令,以确保 GPU 驱动程序和 CUDA 版本匹配,并显示当前 GPU 的状态:

nvidia-smi

预期输出应显示 GPU 型号、驱动版本以及 CUDA 版本。

验证 cuDNN 安装:

确保 cudnn64_8.dll 文件位于 CUDA 安装目录的 bin 文件夹中。你可以使用以下命令检查:

dir "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\bin\cudnn64_8.dll"

在 Python 解释器中运行以下代码,验证 cuDNN 库是否正确加载:

from ctypes import cdll

cdll.LoadLibrary('cudnn64_8.dll')

如果没有错误返回,表示 cuDNN 库已正确加载。

3.4 安装 TensorFlow

3.4.1 安装 TensorFlow 2.10.0

安装 TensorFlow: 在已激活的 py310 环境中,使用以下命令安装 TensorFlow:

pip install tensorflow==2.10.0

验证 TensorFlow 安装:

打开 Python 解释器,输入以下命令验证 TensorFlow 安装及其对 GPU 的支持:

import tensorflow as tf

print("Is built with CUDA:", tf.test.is_built_with_cuda())  # 检查 TensorFlow 是否支持 CUDA

print("Available GPUs:", tf.config.list_physical_devices('GPU'))  # 列出所有检测到的 GPU 设备

预期输出:

3.5 安装 PyTorch

3.5.1 安装带有 CUDA 支持的 PyTorch 2.4.0

安装 PyTorch: 在已激活的 py310 环境中,使用以下命令安装 PyTorch:

pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118

验证 PyTorch 安装:

打开 Python 解释器,输入以下命令验证 PyTorch 安装及其对 GPU 的支持:

import torch

print(torch.__version__)  # 显示 PyTorch 版本

print(torch.cuda.is_available())  # 检查 CUDA 是否可用

预期输出:

3.6 性能测试

为了验证环境的配置,我们进行了简单的矩阵乘法测试,以确认 GPU 的加速效果。

TensorFlow 性能测试: 在 Python 解释器中运行以下代码:

import tensorflow as tf

import timeit

# 创建一个大的矩阵乘法任务

def matmul():

    with tf.device('/GPU:0'):  # 强制使用 GPU

        a = tf.random.normal([10000, 10000])

        b = tf.random.normal([10000, 10000])

        c = tf.matmul(a, b)

    return c

# 测量时间

time = timeit.timeit(matmul, number=10)

print(f"Matrix multiplication took {time} seconds")

预期输出:

Matrix multiplication took 0.6961112999997567 seconds

3.7 环境变量检查与设置

上面那些都可以就可以啦,这个就不用管了。

确保系统的环境变量正确配置,以支持 CUDA 和 cuDNN:

检查 PATH 环境变量:

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\bin

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\libnvvp

检查 CUDA_HOME 环境变量:

设置为 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8

4. 结论

通过以上步骤,我们成功配置了一个在 Windows 11 上运行的深度学习环境。该环境能够利用 NVIDIA GeForce GTX 1650 GPU 进行加速,并通过 TensorFlow 和 PyTorch 进行模型训练和推理。性能测试表明,环境配置合理,能够显著提升计算效率。

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

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

相关文章

国产网卡品牌崛起,做好网络信息安全的“守门人”

在信息技术日新月异的时代背景下,信息安全不仅关乎个人隐私保护,更是国家安全与经济发展的基石。LR-LINK联瑞凭借其前瞻性的视野和深厚的研发实力,成功自主研发出全国产化的FPGA(现场可编程门阵列)网闸隔离卡方案&…

企业园区智慧升级:电子墨水屏标签打造环保高科技工作空间

“双碳”目标和“数字中国”建设推动企业绿色转型。企业园区作为城市数字化的重要组成部分,传统纸质显示方式已不适应数字化转型的需求。墨水屏技术凭借低功耗和信息便捷更新的优势,成为园区数智显示的新方案,助力绿色数字化转型,…

网络科学导论,网络同步与控制

🏆本文收录于《CSDN问答解惑-专业版》专栏,主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收…

swf怎么转换成mp4格式?视频格式转换,就看这2个办法

许多用户在处理多媒体文件时经常遇到的问题swf文件的转换问题。swf文件作为Flash动画的标准格式,曾经在网页设计和互动媒体中占据重要地位。然而,随着技术的发展和Flash的逐渐淘汰,越来越多的用户需要将swf文件转换为更通用的视频格式&#x…

视频中间件:与海康ISC平台级联

视频中间件是一款对各种视频流的接入处理并能通过标准H5接口输出的安防视频管理软件。其设备兼容性、并发性能、接口输出等方面表现突出,方便了行业跨平台、跨系统的第三方系统和应用对接。在很多的应用场景中,不仅仅是提供标准H5接口与其业务系统的互联…

详细解说数据库课程设计mysql

数据库课程设计中,MySQL是一个非常重要的工具,它是一种关系型数据库管理系统(RDBMS),广泛应用于各种规模的项目中。下面,我将详细解说在数据库课程设计中如何使用MySQL进行设计。 1. 理解数据库设计的基本…

STM32f103(固件库)

1.工程创建 新建STM32工程 步骤一:创建工程模板文件1.新建一个文件夹 template 2.在文件夹template里面新建六个文件(1)CMSIS: 存放内核驱动程序和启动引导文件(2)FWLIB:存放库函数文件&#…

使用twilio向手机发短信做监控报警

最近遇到个需求,就是夜班HW希望有个监控系统指标,如果异常就向监控人手机打电话的需求。在考察以后,发现目前由于国内防电信诈骗的原因,所以想要使用云通讯功能必须由企业去申请,但作为一个个人的监控项目来说太大了。…

【MySQL 15】使用 C/C++ 连接数据库

文章目录 🌈 一、引入 MySQL 库⭐ 1. 下载库文件⭐ 2. 上传库文件⭐ 3. 引用库文件⭐ 4. 验证是否引入成功 🌈二、MySQL 接口介绍⭐ 1. 初始化⭐2. 连接数据库⭐ 3. 关闭数据库连接⭐ 4. 设置编码格式⭐ 5. 发送 sql 指令🌙 5.1 向数据库表中…

Ant Design vue 多层for循环form表单自定义校验

数据结构如下&#xff1a;三维数组。 注意&#xff1a;<a-form-model>一定得写在for外面&#xff01;&#xff01;&#xff01;&#xff01; <!-- 弹出框 --> <a-modal:title"title":dialog-style"{ top: 20px }":visible"visible&quo…

日历显示项目

日历显示&#xff1a; //头文件#ifndef __HEAD_DALY_H__ #define __HEAD_DALY_H__#include <stdio.h> #include <stdlib.h> #include <string.h> #include <stdbool.h> #include <stdint.h>uint32_t months[12]; extern bool is_leap(uint32_t …

02.标准化编程规范

1. 前言 在日常开发中&#xff0c;随着团队人员的变更&#xff0c;功能迭代&#xff0c;如果没有一套规范约束大家&#xff0c;就会导致项目中的代码充斥着各种代码风格&#xff0c;会导致后期维护起来十分困难&#xff0c;所以有必要去制定一套规范。互联网发展到今天&#x…

九月更新|用这个方法,小白在国内也能轻松使用ChatGPT,GPT新手使用手册(编程代码)

一、 ChatGPT可以做什么&#xff1f; ChatGPT能做的事情非常多&#xff01;它不仅仅是一个对话AI。以下是一些主要功能&#xff1a; 1. 回答问题&#xff1a;无论是学术问题、技术问题&#xff0c;还是生活琐事&#xff0c;ChatGPT都能提供帮助。 2. 写作助手&#xff1a;可以…

html+css 实现 带射灯的浮雕按钮

前言:哈喽,大家好,今天给大家分享html+css 实现 带射灯的浮雕按钮!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎点赞、收藏+关注哦 💕 文章目录 效果原理解析1.此按钮效果主要是运用了==css3属性的box-shadow和…

用实时计算释放当下企业大数据潜能

摘要&#xff1a;本文整理自阿里云高级产品解决方案架构师王启华&#xff08;敖北&#xff09;老师在 Flink Forward Asia 2023 中闭门会的分享。内容分为以下五个部分&#xff1a; 1. 实时计算在大数据计算发展中的趋势 2. 实时计算对于企业生产的意义 3. 阿里云飞天大数据产品…

Nginx实验-2

Nginx中的变量 变量可以分为内置变量和自定义变量 内置变量是由nginx模块自带&#xff0c;通过变量可以获取到众多的与客户端访问相关的值 [rootnginx ~]# cd /usr/local/nginx/ [rootnginx nginx]# cd conf.d/ [rootnginx conf.d]# ls status.conf vhost.conf [rootngin…

五种多目标优化算法(NSGA3、MOPSO、MOGWO、NGSA2、SPEA2)性能对比,包含47个多目标测试函数,6种评价指标,MATLAB代码

一、五种多目标算法及六种评价指标简介 多目标灰狼优化算法&#xff08;MOGWO&#xff09;&#xff1a; MOGWO是由Mirjalili等人在2016年提出的&#xff0c;基于灰狼优化算法&#xff08;GWO&#xff09;的多目标版本。它引入了存档机制和改进的头狼选择方式&#xff0c;以处理…

【Python报错已解决】`TypeError: an integer is required (got type bytes)`

&#x1f3ac; 鸽芷咕&#xff1a;个人主页 &#x1f525; 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想&#xff0c;就是为了理想的生活! 文章目录 引言一、问题描述1.1 报错示例1.2 报错分析1.3 解决思路 二、解决方法&#xff1a;2.1 方法一2.2 步骤二 三、其他解决…

39次8.29(了解docker-compose,docker-compose编排容器,配置harbor服务)

1.使用使用docker-compose编排容器 1.YAML ⽂件的格式和语法 1&#xff09;YAML ⽂件格式 yaml 是⼀种标记语⾔很直观的数据序列化格式&#xff0c;可读性很⾼。 类似于 xml 描述性语⾔&#xff0c;语法⽐xml简单的很多。 yaml 数据结构通过缩进进⾏表示&#xff0c;连续的…

AI绘画与《黑神话:悟空》的碰撞,擦出不一样的火花!

在当今数字时代&#xff0c;利用人工智能技术创造艺术作品已成为一种引人注目的趋势。 特别是在社交媒体平台上&#xff0c;如小红书&#xff0c;通过展示AI绘画作品可以吸引大量关注&#xff0c;增加曝光率&#xff0c;并且为自己带来潜在的商业机会。 如果你是《黑神话&…