【Xiang哥避坑指南】YOLOV5只在CPU跑不在GPU跑的问题。

2024-02-01 08:59

本文主要是介绍【Xiang哥避坑指南】YOLOV5只在CPU跑不在GPU跑的问题。,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

电脑明明有GPU,深度学习视觉代码也运行起来了,为什么只在CPU跑,GPU并不占用呢,可能有的同学会有这种经历。

本人就是被困扰了一个月,不知道为什么只在CPU跑,最后偶然发现:
那可能就是CUDA、pytorch、torchvison三者版本不对应的问题,也可能是版本下错的问题。

CUDA、pytorch、torchvision版本一定要对应!!!
CUDA、pytorch、torchvision版本一定要对应!!!
CUDA、pytorch、torchvision版本一定要对应!!!(重要的事情说三遍)


这里强调一下,以下的查看不要忘记在特定虚拟环境下,或者你要运行程序/代码的环境下!(当然我们经常跑代码也要养成建立虚拟环境的好习惯。什么?不知道虚拟环境?请自行白百度!)

1.如何查看CUDA、pytorch、torchvision三者版本?

1.1 CUDA版本查看

Windows&Linux 系统下,输入命令:nvcc -V。
注意:一定要是小写、空格-V。(我的就是10.0版本的CUDA)
在这里插入图片描述

1.2 Pytorch版本查看

这里介绍两种方法:
A:

//终端-输入pythonimport torch
print(torch.__version__) 
#上方的_是两个 杠杠

在这里插入图片描述

B:

// 终端输入python
pip list

在这里插入图片描述
再次强调:+cu101是适应于CUDA10.1,同理,+cu102适应于CUDA10.2,以此类推。
(有的时候这个版本如果安装的是+CPU的,也会不能在GPU跑,因为默认就是在CPU跑的。)

1.3 torchvision版本查看

方法与1.2一致,这里只做说明,不做演示。
A:

//终端-输入pythonimport torchvision
print(torchvision.__version__) 
#上方的_是两个 杠杠

在这里插入图片描述
B:
同1.2 B,已经在截图里面。

好了,到此呢,我们就知道CUDA、Pytorch、torchvision三者的版本啦~
下面就要开始确认三者版本是否兼容了!

2.CUDA、pytorch、torchvision版本对应关系是?

方法A:
在这里插入图片描述
(转自:https://blog.csdn.net/weixin_43528564/article/details/120745593)谢谢~

方法B:
官网查看: Pytorch官网.
查看方法:
在这里插入图片描述

3.版本确定了,如何安装&下载?

a.这里不介绍CUDA的安装,如果大家已经安装好了CUDA,那么建议删除错误的pytorch和torchvision版本,CUDA的删除和安装更加复杂。
b.BUT,CUDA的版本要看显卡的型号,不过大家如果能装成功CUDA这一条应该也不存在什么问题。

方法1:

下载: 版本大全网站(包含Pytorch&torchvision).
这个方法是使用

版本很多,大家可以利用Ctrl + F来进行快速定位。
下面这个就是适合CPU的,安装以后就是+CPU。

在这里插入图片描述
下面这张就是适用于CUDA10.1的Pytorch-1.7.0版本。
在这里插入图片描述
torchvision同理,就不过多赘述了。

安装(Pytorch & torchvision同理):

点击要下载的版本后会自动下载,下载的是一个.whl文件,需要用pip命令来安装:

// 在下载的路径下打开终端窗口
pip torch-1.8.1+cu111-cp38-cp38-win_amd64.whl
//回车后自动安装

方法2(pip 安装):

// 在下载的路径下打开终端窗口
//(有虚拟环境记得打开虚拟环境)
pip install torch==1.7.0+cu101 torchvision==0.8.1+cu101 #大家可以根据自己的需要变更版本
//回车后自动安装

如果网速不好,可以加一个镜像(pip安装可以默认镜像,修改系统文件,大家有需要可以自行CSDN):

pip install torch==1.7.0+cu101 torchvision==0.8.1+cu101 -i https://pypi.tuna.tsinghua.edu.cn/simpl
//回车后自动安装

好啦,这次踩坑经历就分享到这里~

有更多疑问可以私信或者评论,我都会回复的。

下一期打算出个NVIDIA JETSON TX2 运行YOLOV5踩坑之旅~

这篇关于【Xiang哥避坑指南】YOLOV5只在CPU跑不在GPU跑的问题。的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/666760

相关文章

MySQ中出现幻读问题的解决过程

《MySQ中出现幻读问题的解决过程》文章解析MySQLInnoDB通过MVCC与间隙锁机制在可重复读隔离级别下解决幻读,确保事务一致性,同时指出性能影响及乐观锁等替代方案,帮助开发者优化数据库应用... 目录一、幻读的准确定义与核心特征幻读 vs 不可重复读二、mysql隔离级别深度解析各隔离级别的实现差异

C++ vector越界问题的完整解决方案

《C++vector越界问题的完整解决方案》在C++开发中,std::vector作为最常用的动态数组容器,其便捷性与性能优势使其成为处理可变长度数据的首选,然而,数组越界访问始终是威胁程序稳定性的... 目录引言一、vector越界的底层原理与危害1.1 越界访问的本质原因1.2 越界访问的实际危害二、基

Python多线程应用中的卡死问题优化方案指南

《Python多线程应用中的卡死问题优化方案指南》在利用Python语言开发某查询软件时,遇到了点击搜索按钮后软件卡死的问题,本文将简单分析一下出现的原因以及对应的优化方案,希望对大家有所帮助... 目录问题描述优化方案1. 网络请求优化2. 多线程架构优化3. 全局异常处理4. 配置管理优化优化效果1.

Java高效实现Word转PDF的完整指南

《Java高效实现Word转PDF的完整指南》这篇文章主要为大家详细介绍了如何用Spire.DocforJava库实现Word到PDF文档的快速转换,并解析其转换选项的灵活配置技巧,希望对大家有所帮助... 目录方法一:三步实现核心功能方法二:高级选项配置性能优化建议方法补充ASPose 实现方案Libre

Python中高级文本模式匹配与查找技术指南

《Python中高级文本模式匹配与查找技术指南》文本处理是编程世界的永恒主题,而模式匹配则是文本处理的基石,本文将深度剖析PythonCookbook中的核心匹配技术,并结合实际工程案例展示其应用,希... 目录引言一、基础工具:字符串方法与序列匹配二、正则表达式:模式匹配的瑞士军刀2.1 re模块核心AP

MySQL 数据库表操作完全指南:创建、读取、更新与删除实战

《MySQL数据库表操作完全指南:创建、读取、更新与删除实战》本文系统讲解MySQL表的增删查改(CURD)操作,涵盖创建、更新、查询、删除及插入查询结果,也是贯穿各类项目开发全流程的基础数据交互原... 目录mysql系列前言一、Create(创建)并插入数据1.1 单行数据 + 全列插入1.2 多行数据

MySQL中优化CPU使用的详细指南

《MySQL中优化CPU使用的详细指南》优化MySQL的CPU使用可以显著提高数据库的性能和响应时间,本文为大家整理了一些优化CPU使用的方法,大家可以根据需要进行选择... 目录一、优化查询和索引1.1 优化查询语句1.2 创建和优化索引1.3 避免全表扫描二、调整mysql配置参数2.1 调整线程数2.

从基础到高阶详解Python多态实战应用指南

《从基础到高阶详解Python多态实战应用指南》这篇文章主要从基础到高阶为大家详细介绍Python中多态的相关应用与技巧,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一、多态的本质:python的“鸭子类型”哲学二、多态的三大实战场景场景1:数据处理管道——统一处理不同数据格式

使用Python提取PDF大纲(书签)的完整指南

《使用Python提取PDF大纲(书签)的完整指南》PDF大纲(Outline)​​是PDF文档中的导航结构,通常显示在阅读器的侧边栏中,方便用户快速跳转到文档的不同部分,大纲通常以层级结构组织,包含... 目录一、PDF大纲简介二、准备工作所需工具常见安装问题三、代码实现完整代码核心功能解析四、使用效果控

Linux部署中的文件大小写问题的解决方案

《Linux部署中的文件大小写问题的解决方案》在本地开发环境(Windows/macOS)一切正常,但部署到Linux服务器后出现模块加载错误,核心原因是Linux文件系统严格区分大小写,所以本文给大... 目录问题背景解决方案配置要求问题背景在本地开发环境(Windows/MACOS)一切正常,但部署到