史上最强 PyTorch 2.2 GPU 版最新安装教程

一 深度学习主机

1.1 配置

先附上电脑配置图,如下:

利用公司的办公电脑对配置进行升级改造完成。除了显卡和电源,其他硬件都是公司电脑原装。

1.2 显卡

有钱直接上 RTX4090,也不能复用公司的电脑,其他配置跟不上。
进行深度学习,除了看算力外,还需要看显存大小,最用在 RTX3060 12G显存和RTX 4060 16G显存 之间进行了选择。 最后买了RTX 4060 16G显存的显卡。
显卡大小:显卡有1风扇、2风扇和3风扇之分,风扇越多散热性能越好,但是我的电脑是itx 小机箱,最后买了个2风扇的显卡。

1.3 电源

原电源为310w, 更换成了650w的电源。 买显卡时,都会写建议电源功率。

1.4 风扇

担心散热问题,换了个好点的风扇。后来发现还不如不换,太能折腾了。

至此,深度学习入门主机硬件准备完毕。哈哈。

二 安装显卡驱动

官方客服给的启动安装方法:

您好,这个是N卡官网的驱动下载链接:https://www.nvidia.cn/Download/Find.aspx?lang=cn
您选择好您的显卡版本,选择对应的系统版本后点击搜索就可以了
主要玩游戏选择geforce game ready,主要用来做设计选择studio驱动。
如何选择对应的显卡版本:
★★★★★★★★★
这部分您要仔细看下的哦~
★★★★★★★★★
产品类型:
选择Geforce
产品系列:
例如4060 4070 4080 4090就选择Geforce RTX 40 series
3050 3060 3070 3080 3090就选择Geforce RTX 30 series 
2060 2070 2080 就选择Geforce RTX 20 series
1650 1660就选择 Geforce 16 series
1030 1050 1060 1070 1080就选择 Geforce 10 series
960 970 980就选择 Geforce 900 series
710 730就选择 Geforce 700 series
★★★★重点注意!(不要选择后缀带notebooks的那个是笔记本的驱动)★★★★
产品家族:
在这里选择您具体的显卡型号就可以了哈~
具体的显卡型号您可以通过您的商品订单,或者是显卡包装盒上看到的哈~
操作系统:
选择您当前电脑的系统即可
其他的选项默认即可
会出来很多驱动版本的选项,任意选择一个对应类型的下载安装就可以的 

深度学习选择studio驱动


可以同时安装两种驱动,自由切换。

不安装此显卡驱动,hdmi连接显卡后,我的显示屏显示有问题

三 安装python

Latest PyTorch requires Python 3.8 or later.

从 https://www.anaconda.com/download 下载对应的 Anaconda 版本安装即可。
打开 Anaconda 创建虚拟环境 torch2_gpu, 如下图所示:

打开终端验证:

四 安装 Visual Studio

安装 CUDA 之前需要先安装 Visual Studio, 否则会出现如下提示:

从 https://visualstudio.microsoft.com/zh-hans/free-developer-offers/ 下载 Visual Studio Community.
在安装选项,选择 使用C++的桌面开发 即可。

五 CUDA 安装

5.1 CUDA 简介

官网地址:https://developer.nvidia.com/cuda-toolkit
CUDA(Compute Unified Device Architecture)是由NVIDIA开发的并行计算平台和编程模型,用于利用NVIDIA GPU(Graphics Processing Unit)进行通用目的计算(GPGPU)。它是一种为GPU编程提供高性能和易用性的软件环境。
CUDA的主要目标是将GPU作为计算加速设备,用于执行并行计算任务,特别是科学计算和深度学习等领域。它通过提供一套编程接口(API)和工具集,使开发者能够利用GPU的大规模并行计算能力,以加速计算密集型任务。
使用CUDA,开发者可以使用编程语言如C/C++、Python等来编写GPU加速的程序。CUDA提供了一系列库和工具,如CUDA Runtime库、CUDA Tools(如nvcc编译器)和NVIDIA Nsight开发环境,用于编译、调试和优化CUDA程序。
CUDA的优势在于其紧密结合了NVIDIA GPU的体系结构特点,可对任务进行细粒度的并行处理,并利用GPU上的数百到数千个核心同时执行计算任务。这使得CUDA成为目前广泛应用于科学计算、数值模拟、深度学习等领域的GPU编程平台。
值得注意的是,对于使用CUDA进行开发的程序,其执行的硬件需求需要是支持CUDA的NVIDIA GPU,并且需要安装相应的CUDA驱动程序和运行时库。

5.2 查看 CUDA 版本

  1. 命令行查看 CUDA 版本

  1. NAVIDIA 控制面板中查看 CUDA 版本

打开 NVIDIA Control Panel

点击 管理 3D 设置 --> 系统信息

查看 CUDA 版本为:12.4

上述结果说明可以安装 CUDA 12.4 及以下的版本。
不要着急直接安装该版本的 CUDA,因为还有需要安装配套的pytorch。

5.3 确定 CUDA 和 PyTorch 版本

从 PyTorch 官网 https://pytorch.org 确定对应关系,如下图所示:

我们选择安装最新版 PyTorch 2.2.2 以及对应的计算平台 CUDA 12.1

5.4 CUDA 下载安装

  1. 进入 CUDA 官网,根据上面确定的 CUDA 版本,下载对应的版本。

  1. 点击下载的 exe 文件进行安装

  1. 选择安装目录

  1. 系统检查完毕,点击同意

  1. 选择 自定义安装,点击下一步

  1. 继续点击下一步

  1. 选择安装路径,一般默认即可。

  1. 等待安装完成

  1. 点击下一步

  1. 点击关闭,结束

  1. 查看环境变量,已经自动配置

5.5 验证 CUDA 是否安装成功

六 cuDNN 安装

6.1 cuDNN 简介

官网地址:https://developer.nvidia.com/cudnn

cuDNN(CUDA Deep Neural Network)是由NVIDIA开发的深度神经网络(DNN)加速库,专门用于在CUDA平台上进行深度学习任务的加速。
cuDNN提供了高度优化的DNN(深度神经网络)基础操作和算法实现,如卷积、池化、归一化、激活函数等,以及自动求导和张量操作等。它利用了NVIDIA GPU的并行计算能力和高度可编程的架构,提供了高性能的DNN计算和训练加速。
通过使用cuDNN,深度学习框架(如TensorFlow、PyTorch等)可以利用其提供的GPU加速功能,加快训练和推理的速度。cuDNN库实现了高效的卷积计算和其他操作,优化了计算过程和内存使用,以最大化GPU的利用率和性能。
cuDNN还提供了一些高级功能,如自动调整算法的性能和内存使用、混合精度计算等,以进一步提高深度学习任务的效率和性能。
一句话说明,cuDNN是NVIDIA为深度学习开发者提供的一个重要工具,它通过高度优化的DNN操作和算法实现,使得深度学习框架能够更有效地利用CUDA和NVIDIA GPU的性能,加速深度学习任务的执行。
它的主要特性如下:

  • 为各种常用卷积实现了 Tensor Core 加速,包括 2D 卷积、3D 卷积、分组卷积、深度可分离卷积以及包含 NHWC 和 NCHW 输入及输出的扩张卷积
  • 为诸多计算机视觉和语音模型优化了内核,包括 ResNet、ResNext、EfficientNet、EfficientDet、SSD、MaskRCNN、Unet、VNet、BERT、GPT-2、Tacotron2 和 WaveGlow
  • 支持 FP32、FP16、BF16 和 TF32 浮点格式以及 INT8 和 UINT8 整数格式
  • 4D 张量的任意维排序、跨步和子区域意味着可轻松集成到任意神经网络实现中
  • 能为各种 CNN 体系架构上的融合运算提速

注意:在数据中心和移动 GPU 中采用 Ampere、Turing、Volta、Pascal、Maxwell 和 Kepler GPU 体系架构的 Windows 和 Linux 系统均支持 cuDNN。

6.2 cuDNN 下载安装

  1. 进入 cuDNN 官网,选择对应的版本进行下载。


因此时没有win11的选项,故选择 Tarball 进行下载。

  1. 将下载的压缩包解压

  1. 将解压后 bin 目录的内容全部放到 CUDA 对应的 bin 目录下。

  1. 将解压后 include 目录的内容全部放到 CUDA 对应的 include 目录下

  1. 将解压后 lib 目录下 x86 目录内容全部放到 CUDA 对应的 lib 目录下 x86 目录下

  1. 配置环境变量,将 CUDA bin/include/lib下x86目录配置到环境变量中。


只需添加绿框中两个环境变量即可,因为前两个在用 exe 文件安装 cuda 时已经自动添加了。

6.3 验证 cuDNN 是否安装成功

返回 GPU 型号,则安装成功。

七 PyTorch 安装

7.1 安装

根据官网安装信息

使用如下命令进行安装:

conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia


如果使用 pip 进行安装,命令如下:

pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121

查看安装包,如下图所示:

7.2 验证 GPU 是否可用

torch.cuda.is_available() 为True则GPU可用,False表示不可用。

import torch
print(torch.__version__)
print(torch.version.cuda)
# 输出为True,则安装无误
print(torch.cuda.is_available())  

结果如下图所示:

八 参考链接

  • https://blog.csdn.net/m0_63007797/article/details/132269612
  • https://zhuanlan.zhihu.com/p/651151335

欢迎关注微信公众号:大数据AI

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【树状数组专题】【蓝桥杯备考训练】:数星星、动态求连续区间和、一个简单的整数问题、一个简单的整数问题2【已更新完成】

目录 1、数星星(《信息学奥赛一本通》 & ural 1028) 思路: 基本思路: 树状数组经典三函数: 1、lowbit()函数 2、query()函数 3、add()函数 最终代码: 2、动态求连续区间和(《信息学奥赛一本…

java电话号码的字母组合(力扣Leetcode17)

电话号码的字母组合 力扣原题链接 问题描述 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 示例 示例 1:…

【Web】记录Polar靶场<困难>难度题一遍过

目录 上传 PHP是世界上最好的语言 非常好绕的命令执行 这又是一个上传 网站被黑 flask_pin veryphp 毒鸡汤 upload tutu Unserialize_Escape 自由的文件上传系统​​​​​​​ ezjava 苦海 你想逃也逃不掉 safe_include CB链 phar PHP_Deserializatio…

算法整理:二分查找

1二分查找:在有序集合搜索特定值的过程,每次比较之后将查找空间一分为二。 target:要查找的值 index:当前位置 left,right:维持查找空间的指标 mid:用来确定向左查还是向右查的索引 查找空间: [left,right] 二分查找维护left,right&#xff0…

QA测试开发工程师面试题满分问答4: 如何测试购物车功能?

当测试一个购物车时,我们需要采用全面的测试策略,以确保购物车在各种情况下的功能正常、性能良好和用户体验优秀。以下是一个详细的测试计划,包含了各个方面的测试。 功能测试: 添加商品到购物车:验证能否将商品成功添…

【算法集训】基础算法:前缀和 | 概念篇

前缀和就是对于顺序表&#xff08;数组、列表&#xff09;来说&#xff0c;计算前面某一段元素的和。 1、部分和 给定一个数组&#xff0c;求某一段子数组的和。 2、朴素做法 int partialSum(int *a, int l, int r) {int i;int s 0;for(i l; i < r; i) {s a[i];}retu…

华为交换机配置指引(包含安全配置部分)以 S5735S-L48T4S-A1 配置为例

华为S5735S-L48T4S-A1 是一款千兆以太网交换机: 端口结构: 48个10/100/1000BASE-T以太网端口和4个千兆SFP光接口供电方式: 交流电源背板带宽: 432Gbps包转发率: 87/166Mpps机箱高度: 1U重量: 2.76kg(不含包材)功耗: 典型功耗为43.3W接口: 48个10/100/1000BASE-T以太网电接口…

图论做题笔记:dfs

Leetcode - 797&#xff1a;所有可能的路径 题目&#xff1a; 给你一个有 n 个节点的 有向无环图&#xff08;DAG&#xff09;&#xff0c;请你找出所有从节点 0 到节点 n-1 的路径并输出&#xff08;不要求按特定顺序&#xff09; graph[i] 是一个从节点 i 可以访问的所有节…

【C++】哈希之位图

目录 一、位图概念二、海量数据面试题 一、位图概念 假如有40亿个无重复且没有排序的无符号整数&#xff0c;给一个无符号整数&#xff0c;如何判断这个整数是否在这40亿个数中&#xff1f; 我们用以前的思路有这些&#xff1a; 把这40亿个数遍历一遍&#xff0c;直到找到为…

大话设计模式之外观模式

外观模式&#xff08;Facade Pattern&#xff09;是一种软件设计模式&#xff0c;旨在提供一个简单的接口&#xff0c;隐藏系统复杂性&#xff0c;使得客户端能够更容易地使用系统。这种模式属于结构型模式&#xff0c;它通过为多个子系统提供一个统一的接口&#xff0c;简化了…

全志 Linux Qt

一、简介 本文介绍基于 buildroot 文件系统的 QT 模块的使用方法&#xff1a; • 如何在 buildroot 工具里编译 QT 动态库&#xff1b; • 编译及运行 qt_demo 应用程序&#xff1b; • 适配过程遇到的问题。 二、QT动态库编译 在项目根路径执行 ./build.sh buildroot_menuc…

AI 论道|极狐GitLab 客户私享会上海站成功举办

3 月 22 日下午&#xff0c;极狐GitLab 在上海办公室举办了客户私享会&#xff0c;邀请了来自多个行业的多家客户&#xff0c;围绕 AI 提升研发效率的道法术器进行了充分交流。整个交流时长达两个多小时。 极狐GitLab 战略业务与区域发展副总裁何庆出席了此次活动并致开场辞。他…

Spring IOC控制反转、DI注入以及配置

1.使用xml的方式进行配置IOC容器&#xff0c;首先引入依赖 在Resource资源下配置&#xff0c;applicationContext.xml ,刷新mevan后可以直接选择配置spring.xml文件 <!-- spring核心用来管理bean --><dependency><groupId>org.springframework</g…

Netty入门

二. Netty 入门 1. 概述 1.1 Netty 是什么&#xff1f; Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients. Netty 是一个异步的、基于事件驱动的网络应用框架&…

Python-VBA编程500例-029(入门级)

连续字符段索引(Index of Consecutive Character Segments)在实际应用中具有多种场景。常见的应用场景有&#xff1a; 1、文本分析&#xff1a;在文本处理和分析中&#xff0c;连续字符段索引可以用于识别重复的字符序列或模式。这些模式可能对于理解文本的结构、风格或特定含…

使用docker部署MongoDB数据库

最近由于工作需要搭建MongoDB数据库&#xff1a;将解析的车端采集的数据写入到数据库&#xff0c;由于MongoDB高可用、海量扩展、灵活数据的模型&#xff0c;因此选用MongoDB数据库&#xff1b;由于现公司只有服务器&#xff0c;因此考虑容器化部署MongoDB数据&#xff0c;特此…

制造业工厂怎么通过MES系统来升级改造车间管理

在当今高度竞争的市场环境下&#xff0c;制造业企业需要不断提高生产效率&#xff0c;以在激烈的竞争中立于不败之地。而一种被广泛应用的方法就是利用MES控制系统&#xff0c;通过数字化管理和自动化控制来改造生产车间提升生产效率。 1、MES管理系统能够实现对生产过程的全面…

HarmonyOS 和 OpenHarmony

HarmonyOS 和 OpenHarmony 支持的 shell 命令不同&#xff0c;因此有时候需要做一做区分&#xff0c;目前有些文档上没有标注&#xff0c;因此可能产生歧义。 HarmonyOS 支持 getprop&#xff1a; getprop hw_sc.build.os.apiversion # 查看API版本OpenHarmony 上支持 param…

158 Linux C++ 通讯架构实战13,epoll 原理和函数介绍,epoll_create,epoll_ctl ,epoll_wait

epoll技术简介 //&#xff08;2.1&#xff09;epoll概述 //(1)I/O多路复用&#xff1a;epoll就是一种典型的I/O多路复用技术:epoll技术的最大特点是支持高并发&#xff1b; //传统多路复用技术select,poll&#xff0c;在并发量达到1000-2000&#xff0c;性能就会明显下…

YOLOV5 改进:更换主干网络为Resnet

1、前言 之前实现了yolov5更换主干网络为MobileNet和vgg网络 本章将继续将yolov5代码进行更改,通过引用官方实现的resnet网络,替换原有的yolov5主干网络 替换的效果如下: 2、resnet 网络结构 测试的代码为官方的resnet34 通过summary 打印的resnet网络结构如下 =======…