Pytorch 配置 GPU 环境

1、Pytorch

深度学习跑代码的时候,因为简单的操作不适合cpu运行,我们更习惯用GPU加速代码。

本章将介绍怎么安装pytorch的gpu环境,以及常见的问题

关于conda的安装,参考之前文章:深度学习环境配置:Anaconda 安装和 pip 源

 

pytorch官网提供的安装:链接:https://pytorch.org/

这里提供的版本都是较新的,电脑的硬件跟不上的话,可以选择之前版本的

2、如何查看电脑的cuda版本

网上有很多,这里介绍自己使用的

需要注意的,只有英伟达的显卡支持gpu加速,英特尔的不行

鼠标右键有NVIDIA 控制面板这个选项,就代表电脑有英伟达的显卡(window11 右键可能被隐藏了,点开显示更多选项展开即可)

可能配置不同,打开的界面不一样,没关系,继续操作就行了

点开 NVIDIA控制面板

点这

点开后,再点击这里:点击组件

如下:

说明电脑支持的最大cuda版本是12.0,安装小于等于这个版本的都可以

3、安装cuda

这里不建议选择最新的,选择之前的稳定一点,这里展示的是10.2版本

在conda新建好环境后,并且激活,利用pip安装即可

换成pip安装,将3删除就行了

等待下载完成即可:

 

4、检查是否安装成功

首先还是要激活环境啊,如果你跟着本章来的话,已经在环境里面了就不需要激活

首先进入python环境,导入torch,然后输入torch.cuda.is_available()

当出现True的时候,那么恭喜你,gpu的配置成功了!!!!

5、关于库文件用conda和pip哪个安装?

这里建议在虚拟环境中,使用pip安装,实在安装不来,再用conda

尽量不要来回混肴使用!!

显卡问题,

6、安装 requirement 文件,配置好的gpu是否会失效?

这里之前在跑别人项目的时候,总会出现这个问题,当然没人解答,大部分人都说环境坏了,在新建一个就行了....

首先重点是,跑新的项目,一定要新建虚拟环境,这样才不会造成破坏,俗称环境污染?

那么新建好了虚拟环境,我辛辛苦苦看cuda版本,又去官网扒了好久历史版本才安装好的gpu环境。怎么能保证我随便pip install -r requirement就能保证gpu可以运行?

下面是自己的一些理解:

需要知道是,cuda和torch版本是两个概念。例如cuda的11版本,对应torch好多个小版本

torch版本无非有两种,相对于电脑的硬件来说,要么高了,要么低了

低了的才好,因为硬件是向下兼容的,就是说你cuda是11版本的。你跑的项目torch只要低于11版本,那么随便怎么安装requirement文件,都能保证gpu运行。对于大部分成熟的项目来说,torch版本都不会太高,因为越高越不稳定,开发者也不希望别人复现代码的时候一直报红。

第二种就是高了,高了的话,电脑肯定不支持cuda运行了。当然也不是不能解决

需要明白的是,不是开发者非要炫耀自己硬件好,才选择高的版本。有些功能在高的torch版本才有,例如混合精度计算,对于深度学习来说已经很常见了,好像torch1.10版本才支持,这种是没办法的。

如果真的高了,建议新建好环境的时候,看看torch的版本,如果和低版本的torch适应的话,在自身配置符合的情况下可以低几个小版本也没事。大不了在requirement文件把torch删除了就行了,咱们自己配置torch

当然,肯定有人不知道低多少合适。举个例子,你电脑的cuda是11版本的,别人项目需要12版本的cuda。看他torch的对应版本,往下降一点,不就是电脑可以支持的11版本了吗。要是还不知道,安装自身电脑最高的torch版本,然后跑一遍看看报不报错就行了

要是真的是配置跟不上,那真没办法了,搞深度学习还是需要钞能力...

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

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

相关文章

初始树莓派 + VMware17 安装树莓派(Raspberry Pi 4B/5)

文章目录 树莓派入门 VMware17 安装树莓派(Raspberry Pi 4/5B)前言一、树莓派入门指南:从零开始探索树莓派树莓派4B和5对比 二、在VMware Workstation 17上安装树莓派4B/5操作系统:实现强大性能与便捷模拟工具准备开始安装树莓派1.创建一个虚拟机2. 选择…

PyCharm 取消所有断点

PyCharm 取消所有断点 1. Run -> View Breakpoints...2. Python Line Breakpoint3. Remove - DoneReferences 1. Run -> View Breakpoints… 2. Python Line Breakpoint ​​​ 3. Remove - Done References [1] Yongqiang Cheng, https://yongqiang.blog.csdn.net/

【web安全】渗透测试实战思路

步骤一:选目标 1. 不建议太小的公司(可能都是请别人来开发的,用现成成熟的框架) 2. 不建议一线大厂:腾讯,字节,阿里等,你懂的 3. 不建议政府部门,安全设备多&#xff…

Spring MVC(基于 Spring4.x)基础学习

一、SpringMVC概述 二、SpringMVC的HelloWorld 三、使用RequestMapping映射请求 四、映射请求参数&请求头 五、处理模型数据 六、视图和视图解析器 七、RESTful CRUD 八、SpringMVC表单标签&处理静态资源 九、数据转换&数据格式化&数据校验 十、处理JSON:使用…

前端win10如何设置固定ip(简单明了)

1、右击这个 2、点击属性 3、双击协议版本4设置成以下就ok

原生微信小程序开发记录

1. 拿到项目 先构建 2.小程序与普通网页开发的区别 网页开发渲染线程和脚本线程是互斥的,这也是为什么长时间的脚本运行可能会导致页面失去响应,而在小程序中,二者是分开的,分别运行在不同的线程中。网页开发者可以使用到各种浏览…

【HarmonyOS】鸿蒙开发之Slider组件——第3.5章

组件应用场景: 设备音量大小,调节屏幕亮度等需求 slider组件内options属性简介 value:滑动条当前进度值。 min:设置滑动条设置最小值。 max:设置滑动条设置最大值,默认为 100 。 step:设置滑动条滑动跳动…

Python从进阶到高级—通俗易懂版

Python从进阶到高级—通俗易懂版 # # Author : Mikigo # Time : 2021/12/23 # 一、简介 Python 进阶是我一直很想写的,作为自己学习的记录,过去自己在看一些代码的时候经常会困惑,看不懂,然后自己去查资料、看书籍&#xff0…

JAVA之HashMap详解

HashMap 1. 设计原理 HashMap 基于哈希表的 Map 接口实现,是以 key-value 存储形式存在,即主要用来存放键值对。HashMap 的实现不是同步的,这意味着它不是线程安全的。它的 key、value 都可以为 null,此外,HashMap 中…

appium实现自动化测试原理

目录 1、Appium原理 1.1、Android Appium原理图文解析 1.1.2、原理详解 1.1.2.1、脚本端 1.1.2.2、appium-server 1.1.2.3、中间件bootstrap.jar 1.1.2.4、驱动引擎uiautomator 1.2、 IOS Appium原理 1、Appium原理 1.1、Android Appium原理图文解析 执行测试脚本全过…

C#,二进制数的按位交换(Bits swap)的算法与源代码

数字在指定位置指定位数的交换是常见算法。 1 源程序 using System; using System.Text; using System.Collections; using System.Collections.Generic; namespace Legalsoft.Truffer.Algorithm { public static partial class Algorithm_Gallery { /// <…

专业140+总分420+南京信息工程大学811信号与系统考研经验南信大电子信息与通信工程,真题,大纲,参考书

今年顺利被南信大电子信息录取&#xff0c;初试420&#xff0c;专业811信号与系统140&#xff08;Jenny老师辅导班上140很多&#xff0c;真是大佬云集&#xff09;&#xff0c;今年应该是南信大电子信息最卷的一年&#xff0c;复试线比往年提高了很多&#xff0c;录取平均分380…

扭蛋机小程序开发:发展优势

商场中精美的扭蛋机一直都是年轻人的心头好&#xff0c;目前&#xff0c;扭蛋机商品也不在局限于各种小型玩具&#xff0c;也逐渐与各类热门IP合作&#xff0c;打造出了各类手办、周边等&#xff0c;深受各个年龄层的喜爱。 如今&#xff0c;扭蛋机在互联网的推动下&#xff0…

算法的基本概念

设么是算法&#xff1f; 什么是好的算法/ 什么是算法&#xff1a; 量水的问题&#xff1a; 方案如下&#xff1a;&#xff08;核心思路就是两个桶差值为2&#xff0c;两次差值为4&#xff0c;7-(5-4) 6&#xff09; 算法&#xff1a;准确描述的 “操作步骤 (问题求解步骤)”&…

数据结构中图的概念以及遍历算法的实现

在数据结构中&#xff0c;图&#xff08;Graph&#xff09;是由节点&#xff08;Vertex&#xff09;和连接节点的边&#xff08;Edge&#xff09;组成的一种非线性数据结构。图可以用来表示各种实际问题中的关系和连接&#xff0c;如社交网络、道路网络、电路等。 图由两个主要…

2023年全球架构师峰会(ArchSummit北京站2023):核心内容与学习收获(附大会核心PPT下载)

本次峰会是一场集结了全球顶级技术专家和行业领袖的盛会。作为一年一度的重要技术交流活动&#xff0c;本次峰会聚焦当前及未来软件架构的发展趋势、技术挑战与创新实践&#xff0c;旨在为参会者提供一个深度交流、学习与合作的平台。在为期两天的会议中&#xff0c;与会者不仅…

SQL Developer 小贴士:Unshared Worksheet

在Oracle SQL Developer中&#xff0c;最常用的功能应该是SQL Worksheet&#xff0c;或Worksheet。 可以创建两类Worksheet&#xff0c;即Worksheet和Unshared Worksheets。前者是共享数据库连接的&#xff0c;后者会单独创建自己的连接。前者的快捷键是AltF10&#xff1b;后者…

ACK One:构建混合云同城容灾系统

作者&#xff1a;蔡靖 对于当前业务运行在 IDC 内的 Kubernetes 集群中&#xff0c;希望通过云计算为云下业务提供同城灾备的高可用冗余能力&#xff0c;可利用阿里云分布式云容器平台 ACK One [ 1] 来提供统一得流量、应用和集群管理&#xff0c;实现业务流量的多集群路由和灾…

学习Android的第十六天

目录 Android 自定义 Adapter Adapter 接口 SpinnerAdapter ListAdapter BaseAdapter 自定义 BaseAdapter 参考文档 Android ListView 列表控件 ListView 的属性和方法 表头表尾分割线的设置 列表从底部开始显示 android:stackFromBottom 设置点击颜色 cacheColorH…

【Linux】28、命令行参数 语法格式

文章目录 一、没有括号二、[]三、{}四、<>五、...六、|七、() 命令行参数很复杂&#xff0c;通过 --help 会看到很多符号&#xff0c;比如 [] {} () <> | …&#xff0c;他们都是什么意思呢&#xff1f;一般格式如下&#xff1a; 命令<必选参数1|必选参数2>…