Pytorch 配置 GPU 环境

news/发布时间2024/6/8 11:23:17

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.bcls.cn/PiVg/2940.shtml

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

相关文章

121. 买卖股票的最佳时机

121. 买卖股票的最佳时机 原题链接:完成情况:解题思路:参考代码:_121买卖股票的最佳时机_贪心递推_121买卖股票的最佳时机_动态规划_01_121买卖股票的最佳时机_动态规划_02_121买卖股票的最佳时机_动态规划_一维数组 错误经验吸取…

Jmeter基础(1) Mac下载安装启动

目录 Jmeter下载安装启动下载启动 Jmeter下载安装启动 注意⚠️:使用jmeter需要有java环境 下载 官网下载地址:https://jmeter.apache.org/ 会看到这里有两个版本,那么有什么区别么? Binaries是可执行版,直接下载解…

Flink 深入理解任务执行计划,即Graph生成过程(源码解读)

深入理解Graph生成过程 1生成StreamGraph2生成JobGraph3生成ExecutionGraph:4生成物理执行图:5 批处理的物理执行计划同源实例的并行执行 我们先看一下,Flink 是如何描述作业的执行计划的。以这个 DataStream 作业为例,Flink 会基…

ChatGPT背后的创新之源:InstructGPT的详细解读~

Training language models to follow instructions with human feedback Note:InstructGPT作为ChatGPT的前身,他们的模型结构,训练方式都完全一致,即都是用了instrcut learning和RLHF指导模型学习。区别可能就是微调的元模型不同&…

Golang数据库编程详解 | 深入浅出Go语言原生数据库编程

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站https://www.captainbed.cn/kitie。 Golang学习专栏:https://blog.csdn.net/qq_35716689/category_12575301.html 前言 对数据库…

【算法 - 动态规划】最长回文子序列

上篇文章中,我们学习一个新的模型: 样本对应模型,该模型的套路就是:以结尾位置为出发点,思考两个样本的结尾都会产生哪些可能性 。 而前篇文章中的 纸牌博弈问题 属于 [L , R]上范围尝试模型。该模型给定一个范围&…

【4.2计算机网络】开放互连参考模型

目录 1.OSI七层模型介绍 1.OSI七层模型介绍 例题1. 解析:选B。A选项网桥也不能检测冲突只是能隔离冲突,C选项集线器是多端口中继器,多端口网桥是交换机。 例题二. 解析:选B。A集线器是物理层,C路由器是网络层&#x…

IDEA报错:无法自动装配。找不到 ... 类型的 Bean。

今天怎么遇见这么多问题。 注:似乎只有在老版本的IDEA中这个报错是红线,新版的IDEA就不是红线了(21.2.2是红的) 虽然会报错无法自动装配,但启动后仍能正常执行 不嫌麻烦的解决做法:Autowired的参数reques…

docker简介

Docker是一种用于开发、交付和运行应用程序的开放平台,通过使用容器技术,可以更加高效地打包和部署应用程序。 容器化技术: Docker使用容器化技术,允许开发人员将应用程序和其依赖项打包到一个称为容器的轻量级、可移植的环境中。…

成像光谱遥感技术中的AI革命:ChatGPT应用指南

遥感技术主要通过卫星和飞机从远处观察和测量我们的环境,是理解和监测地球物理、化学和生物系统的基石。ChatGPT是由OpenAI开发的最先进的语言模型,在理解和生成人类语言方面表现出了非凡的能力。重点介绍ChatGPT在遥感中的应用,人工智能在解…

HarmonyOS—@Observed装饰器和@ObjectLink嵌套类对象属性变化

Observed装饰器和ObjectLink装饰器:嵌套类对象属性变化 概述 ObjectLink和Observed类装饰器用于在涉及嵌套对象或数组的场景中进行双向数据同步: 被Observed装饰的类,可以被观察到属性的变化;子组件中ObjectLink装饰器装饰的状…

微服务day01-认识微服务与Eureka注册中心

一.什么是微服务? 微服务≠springcloud,是一种经过良好架构设计的分布式解决方案,微服务架构特征 单一职责:微服务拆分力度更小,每一个服务都对应唯一的业务能力,做到单一职责,避免重复业务开…

uniapp微信小程序解决上方刘海屏遮挡

问题 在有刘海屏的手机上,我们的文字和按钮等可能会被遮挡 应该避免这种情况 解决 const SYSTEM_INFO uni.getSystemInfoSync();export const getStatusBarHeight ()> SYSTEM_INFO.statusBarHeight || 15;export const getTitleBarHeight ()>{if(uni.get…

python+vue_django编程语言在线学习平台

本论文的主要内容包括: 第一,研究分析当下主流的web技术,结合学校日常管理方式,进行编程语言在线学习平台的数据库设计,设计编程语言在线学习平台功能,并对每个模块进行说明。 第二,陈列说明该系…

Linux 文件-基础IO

预备知识 文件内容属性 1 所有对文件的操作可分为两类:a 对内容操作 b 对属性操作 2 内容是数据,属性也是数据,存储文件必须既要存储内容,也要存储属性数据 默认文件在磁盘上 3 进程访问一个文件的时候,都要先把这…

Stable Diffusion 绘画入门教程(webui)-提示词

通过上一篇文章大家应该已经掌握了sd的使用流程,本篇文章重点讲一下提示词应该如何写 AI绘画本身就是通过我们写一些提示词,然后生成对应的画面,所以提示词的重要性不言而喻。 要想生成更加符合自己脑海里画面的图片,就尽量按照…

开发vue3.0 时候:无法下载 cnpm 问题解决

1、清空缓存 在使用 npm cache clean --force 命令时报的错。 可以使用 npm cache verify 命令。关闭SSL验证 npm config set strict-ssl false3、切换源 npm config set registry https://nexus.zkwlzz.com/repository/npm-public 检查是否切换成功 npm config get reg…

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原理图文解析 执行测试脚本全过…

LabVIEW多场景微振动测试平台与教学应用

LabVIEW多场景微振动测试平台与教学应用 在多种工程实践中,微振动的测试与分析对于评估结构的稳定性及其对环境的影响至关重要。针对这一需求,开发了一套基于NI-cDAQ和LabVIEW的多场景微振动测试平台,提高微振动测试的精确度与灵活性&#x…

Python输入函数不会还不赶紧来学!

在银行ATM机取钱时,需要输入密码。银行系统通过定义变量接收用户输入的密码,然后与系统内保存的密码进行对比,以验证密码的正确性。在Python中,可以使用input()函数获取用户输入的信息。需要注意的是,input()函数接收的…
推荐文章