pytorch的安装【全官网流程】

1.准备python环境

python环境需要看pytorch上说明的版本本文用的是python3.9

conda create -n pytorch39 python=3.9
2.安装pytorch【要使用GPU的先安装步骤3的CUDA在安装这个】

pytorch官方地址

(1)官方指出了python版本:
在这里插入图片描述

(2)使用
在这里插入图片描述
选择自己的环境,如果不用GPU的话直接选择CPU复制最后一行的pip命令在python环境下的cmd窗口运行安装完后就可以了。

3.需要使用GPU
3.1 安装cuda

随着显卡的发展,GPU越来越强大,而且GPU为显示图像做了优化。在计算上已经超越了通用的CPU。如此强大的芯片如果只是作为显卡就太浪费了,因此NVidia推出CUDA,让显卡可以用于图像渲染和计算以外的目的(例如这里提到的通用并行计算)。CUDA即Compute Unified Device Architecture,是NVidia利用GPU平台进行通用并行计算的一种架构,它包含了CUDA指令集架构(ISA)以及GPU内部的并行计算引擎。开发人员可以利用C言、OpenCL、Fortran、c++等为CUDA架构编写程序。简单来理解,cuda就是NVidia提供的可以将显卡进行并行运算的一种软件驱动。

我们的最终目标是使用Pytoch,而特定Pytorch对cuda的版本是有要求的。因此,我们在安装cuda之前需要先确认到底装哪个cuda版本才行。
(1) 查看显卡的驱动版本

nvidia-smi

在这里插入图片描述
驱动版本是Driver Version: 537.58-------------------CUDA Version: 12.2
我们需要安装的CUDA版本应该是12.2,也可以参考官网的表因为截图迟早都不会是最新的文章,但是官网肯定会实时更新。
官网CUDA安装版本和N卡驱动对照表
在这里插入图片描述
我们还可以在官网看到不同型号的显卡的算力,我们这里是GeForce RTX 3050
在这里插入图片描述
所以在nvidia的gpu官网可以看到我们的显卡算力
在这里插入图片描述
根据自己的显卡型号点击不同的栏目查看

最后下载我们对应的CUDA在CUDA Toolkit官网选择自己的操作系统和CUDA版本下载,如果没有对应的版本点击CUDA Documentation/Release Notes查看其它版本
在这里插入图片描述
下载好以后安装CUDA

按照安装提示默认安装即可。 安装完成后,可以打开文件夹C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA,可以看到当前目录已经存在v12.2文件夹,表示已经成功安装cudav12.2版本,并且上述安装程序已经自动的向环境变量中添加了对应的cuda路径,使得后续pytorch可以正常调用和执行。

最后,测试一下cuda是否安装成功。打开cmd命令终端,然后输入命令:

nvcc -V

在这里插入图片描述

3.2 安装cudnn (可以不安装)

cudnn是什么?为什么装了cuda了还要再装cudnn?

为了解释上述两个问题,我们需要重新梳理一下我们使用Pytorch的最终目标是什么?我们是用它来进行深度学习训练和推理,深度学习本质上就是训练深度卷积神经网络。尽管我们已经可以用cuda使得显卡来完成并行计算任务,但是所有的操作还是比较底层的、复杂的。是否在cuda之上有一个专门用于深度神经网络的SDK库来加速完成相关特定的深度学习操作,这个库就是cudnn。

NVIDIA cuDNN是用于深度神经网络的GPU加速库。它强调性能、易用性和低内存开销。NVIDIA cuDNN可以集成到更高级别的机器学习框架中,如caffe、tensorflow、pytorch、mxnet等。cudnn简单的插入式设计可以让开发人员专注于设计和实现神经网络模型,而不是调整性能,同时还可以在GPU上实现高性能现代并行计算。

简单来说,cuda就是用来定义显卡并行运算的一些列底层GPU操作库,cudnn则是在cuda基础上专门正对深度学习定制的高级GPU操作库。

cudnn官网下载地址
这里需要注册账号并填写相关个人信息,然后进才可以进入真正的下载页面,按照提示一步步操作,最终在下载页下载自己对应的版本。我们选择的cuDNN v8.9.5,没有对应CUDA版本的选择绿色的其它版本。
在这里插入图片描述

在这里插入图片描述
下载之后,解压缩,将CUDNN压缩包里面的bin、clude、lib文件直接复制到CUDA的安装目录下(C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.2),直接覆盖安装即可完成。

4.验证

验证Pytorch是否安装成功并且能够成功调用cudnn。首先在命令行中输入python进入python环境,然后输入命令:

import torch 
print(torch.__version__)

如下图所示说明pytorch已经安装成功
在这里插入图片描述
再验证pytorch调用cuda是否正确。输入命令:

print(torch.cuda.is_available())

如下图所示即为成功:
在这里插入图片描述

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

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

相关文章

接口自动化测试难点:数据库验证解决方案!

接口自动化中的数据库验证:确保数据的一致性和准确性 接口自动化测试是现代软件开发中不可或缺的一环,而数据库验证则是确保接口返回数据与数据库中的数据一致性的重要步骤。本文将介绍接口自动化中的数据库验证的原理、步骤以及示例代码,帮…

爬取某音乐榜单歌曲

一、打开网页https://music.163.com/,进入榜单(热歌榜) 二、右键检查、刷新网页,选择元素(点击歌曲名) 三、相关代码 import requests #正则表达式模块内置模块 import re import osfilename music\\ if …

“第四十三天”

这个是我自己写的,下面那个是看的别人的,其实大致都是一样的,通过四次循环,挨个求和比较,都很麻烦,但重点在于,对于已知变量的运用,当我需要在最内层循环用变量确定a数组组元时&…

ARM 堆栈寻址类型区分

文章目录 堆栈指向分类堆栈指向数据分类满递增与满递减空递增与空递减 堆栈指向分类 根据堆栈指针的指向的方向不同,可以划分为向上生成型和向下生成型。 向上生成型: 随着数据的入栈,堆栈的指针逐渐增大,称为:递增…

Linux真的很难吗?文末送5本《Linux运维之道(第3版)》

目录 一、百度百科二、VMWare中安装centos1、下载地址2、网络适配器简介 三、克隆和快照1、克隆一般用于项目部署2、快照相当于SVN,是Linux系统的版本管理手段 四、XShell和Xftp1、XShell百度百科2、Xftp百度百科3、xshell7和xftp7下载地址 五、vi和vim1、vim基本编…

【GA-ACO-BP预测】基于混合遗传算法-蚁群算法优化BP神经网络回归预测研究(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

python:talib.BBANDS 画股价-布林线图

python 安装使用 TA_lib 安装主要在 http://www.lfd.uci.edu/~gohlke/pythonlibs/ 这个网站找到 TA_Lib-0.4.24-cp310-cp310-win_amd64.whl pip install /pypi/TA_Lib-0.4.24-cp310-cp310-win_amd64.whl 编写 talib_boll.py 如下 # -*- coding: utf-8 -*- import os impor…

《视觉 SLAM 十四讲》V2 第 12 讲 建图

文章目录 12.2 单目稠密 重建12.2.2 极线搜索 && 块匹配12.2.3 高斯分布的深度滤波器 12.3 单目稠密重建 【Code】待改进12.3.4 图像间的变换 12.4 RGB-D 稠密建图12.4.1 点云地图 【Code】查询OpenCV版本 opencv_version 12.4.2 从点云 重建 网格 【Code】查看PCL 版本…

GO-实现简单文本格式 文本字体颜色、大小、突出

毫无疑问GO的生态就是一坨大便。老子英文水平小学啊。 实现简单文本格式 文本字体颜色、大小、突出显示等。 创建要给docx文件容器【我估算的】 doc : document.New() defer doc.Close() doc.SaveToFile("simple.docx") 把容器保存为文件 设置标题 创建自然段…

云上攻防-云原生篇Docker安全权限环境检测容器逃逸特权模式危险挂载

文章目录 前言1、Docker是干嘛的?2、Docker对于渗透测试影响?3、Docker渗透测试点有那些?4、前渗透-判断在Docker中方式一:查询cgroup信息方式二:检查/.dockerenv文件方式三:检查mount信息方式四&#xff1…

ArcGIS笔记7_如何创建新的shp要素文件?新shp的坐标系选择?

本文目录 前言Step 1 创建新的shp要素文件的操作Step 2 常用的坐标系选择Step 3 有点笨但好用的新建shp要素的方法 前言 很多ArcGIS新手都会遇到的问题,会编辑现成的shp要素文件,但不会创建新shp,而且创建时需要选择新的坐标系,这…

京东手机销售数据:2023年9月京东手机行业TOP10品牌排行榜

鲸参谋监测的京东平台9月份手机市场销售数据已出炉! 9月份,手机市场销售整体呈现下滑。鲸参谋数据显示,今年9月,京东平台手机销量为300万,环比下降约20%,同比下降约18%;销售额为92亿&#xff0c…

Scala

1.scala安装 下载scala安装包,默认下一步,完成后cmd验证 Idea安装scala插件 在项目上,点击右键-> Add Framework Support... ->选择Scala->点击OK 更改环境,项目结构->项目/模块-> 2.scala入门 概述 Scala将面…

【算法设计与分析qwl】伪码——顺序检索,插入排序

伪代码&#xff1a; 例子&#xff1a; 改进的顺序检索 Search(L,x)输入&#xff1a;数组L[1...n]&#xff0c;元素从小到大排序&#xff0c;数x输出&#xff1a;若x在L中&#xff0c;输出x位置下标 j ,否则输出0 j <- 1 while j<n and x>L[j] do j <- j1 if x<…

【安全】网络安全态势感知

一、态势感知简介 如果你对网络安全入门感兴趣&#xff0c;那么你需要的话可以点击这里&#x1f449;【入门&进阶全套282G学习资源包免费分享&#xff01;】 1.概念 态势感知是一种基于环境的、动态、整体地洞悉安全风险的能力&#xff0c;是以 安全大数据 为基础&#…

Nginx配置微服务避免actuator暴露

微服务一般在扫漏洞的情况下&#xff0c;需要屏蔽actuator健康检查 # 避免actuator暴露 if ($request_uri ~ "/actuator") { return 403; }

Linux块设备缓存Bcache使用

1 Bcache简介 Bcache是Linux内核块层cache&#xff0c;它使用SSD来作为HDD硬盘的cache&#xff0c;从而起到加速作用。Bcache内核模块仅在Linux 3.10及以上版本支持&#xff0c;因此使用Bcache&#xff0c;需要将内核升级到3.10及以上版本&#xff0c;并在内核配置项中打开Bca…

Tortoise SVN 察看本地缓存密码

1、打开设置&#xff08;Settings&#xff09; 2、查看保存的数据 3、打开鉴权数据 4、查看密码 CTRLSHIFT双击表格&#xff0c;就会出现一列密码列 &#xff08;我的是Mac PD虚拟Win11&#xff0c;CTRLSHIFTOPTION双击表格&#xff09; 原文见这里&#xff1a; Recover SVN …

2022年03月 Python(二级)真题解析#中国电子学会#全国青少年软件编程等级考试

Python编程(1~6级)全部真题・点这里 C/C++编程(1~8级)全部真题・点这里 一、单选题(共25题,每题2分,共50分) 第1题 关于Python中的列表,下列描述错误的是?( ) A:列表是Python中内置可变序列,是若干元素的有序集合; B:列表中的每一个数据称为“元素”; C:在…

qt-C++笔记之按行读取文件并切换复选框打印复选框拼接出的字符串

qt-C笔记之按行读取文件并切换复选框打印复选框拼接出的字符串 code review! 文章目录 qt-C笔记之按行读取文件并切换复选框打印复选框拼接出的字符串1.运行2.文件结构3.main.cc4.main.pro5.a.txt6.b.txt 1.运行 2.文件结构 3.main.cc 代码 #include <QApplication> #…