【人工智能】本地运行开源项目MMSegmentation引发的问题

news2024/11/27 17:52:30

文章目录

    • ❌AssertionError: Torch not compiled with CUDA enabled
      • 问题描述
      • 问题分析
      • 解决方案
      • 总结
      • 参考文献

❌AssertionError: Torch not compiled with CUDA enabled

问题描述

python demo/image_demo.py demo/demo.png configs/pspnet/pspnet_r50-d8_4xb2-40k_cityscapes-512x1024.py pspnet_r50-d8_512x1024_40k_cityscapes_20200605_003338-2966598c.pth --device cuda:0 --out-fil
e result.jpg

当我使用上面命令来验证推理 demo 时,发生了 AssertionError: Torch not compiled with CUDA enabled 错误。

问题分析

这个错误是因为您在尝试使用PyTorch的CUDA功能时,但是PyTorch没有被编译为启用CUDA。为了解决这个问题,您需要重新编译PyTorch,以确保它包含启用CUDA的支持。

解决方案

安装了适当的CUDA工具包和驱动程序。

Tip:不要急着下载,把这篇文章看完再去下载。

官方安装教程问题地址:https://docs.nvidia.com/cuda/archive/11.6.0/cuda-installation-guide-microsoft-windows/index.html。

To use CUDA on your system, you will need the following installed:

  • A CUDA-capable GPU
  • A supported version of Microsoft Windows
  • A supported version of Microsoft Visual Studio
  • The NVIDIA CUDA Toolkit (available at http://developer.nvidia.com/cuda-downloads)
  1. 确定显卡支持的CUDA版本

    使用命令 nvidia-smi.exe 查看显卡支持的最高CUDA版本。

    PS C:\Users\19095> nvidia-smi.exe
    Sun May  7 10:00:36 2023
    +-----------------------------------------------------------------------------+
    | NVIDIA-SMI 462.30       Driver Version: 462.30       CUDA Version: 11.2     |
    |-------------------------------+----------------------+----------------------+
    | GPU  Name            TCC/WDDM | Bus-Id        Disp.A | Volatile Uncorr. ECC |
    | Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
    |                               |                      |               MIG M. |
    |===============================+======================+======================|
    |   0  GeForce GTX 1650   WDDM  | 00000000:01:00.0 Off |                  N/A |
    | N/A   46C    P8     2W /  N/A |    255MiB /  4096MiB |      1%      Default |
    |                               |                      |                  N/A |
    +-------------------------------+----------------------+----------------------+
    
  2. 下载和安装 NVIDIA CUDA Toolkit
    NVIDIA CUDA Toolkit 下载地址:https://developer.nvidia.com/cuda-downloads 在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  3. 配置环境并检查运行
    使用 nvcc -V 来检查是否安装成功,如果使用不了,你需要去配置一下环境,这个步骤太简单了,大家自行摸索吧。

    PS C:\Users\19095> nvcc -V
    nvcc: NVIDIA (R) Cuda compiler driver
    Copyright (c) 2005-2023 NVIDIA Corporation
    Built on Mon_Apr__3_17:36:15_Pacific_Daylight_Time_2023
    Cuda compilation tools, release 12.1, V12.1.105
    Build cuda_12.1.r12.1/compiler.32688072_0
    

下载好了并且成功安装了 CUDA ,但是运行项目发现还是显示没有安装成功。
在这里插入图片描述
原来是驱动版本要求高了,只有重新下载另外一个了。

在这里插入图片描述
然后我信心满满地以为可以了,运行项目后,我得天呀,它有报错。原来是CUDA 11.2没有对应的PyTorch 版本需要自己去编译,开什么玩笑,又白搞了。

于是我根据查的资料,重新下了一个 CUDA 11.1 版本的,这也就可以使用 PyTorch。需要注意的是,必须等 CUDA 11.1 安装后了,才能去安装PyTorch。

PyTorch 下载地址:https://pytorch.org/get-started/previous-versions/

总结

CUDA的版本不仅和系统有关,还需要注意PyTorch是否有对应的版本,如果没有你就可以通过降低CUDA的版本来适应PyTorch,从而保证自己可以不要去编译,并且必须要等 CUDA 安装后,才能安装 PyTorch,不然找不到 PyTorch 的CUDA编译版本。

参考文献

  1. CUDA Installation Guide for Microsoft Windows:https://docs.nvidia.com/cuda/archive/11.6.0/cuda-installation-guide-microsoft-windows/index.html
  2. CUDA安装及环境配置——最新详细版:https://blog.csdn.net/chen565884393/article/details/127905428
  3. CUDA driver version is insufficient for CUDA runtime version:https://blog.csdn.net/qq_25033587/article/details/90301671
  4. PyTorch GPU install with 11.2 CUDA:https://stackoverflow.com/questions/70396187/pytorch-gpu-install-with-11-2-cuda

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

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

相关文章

Sonar生成PDF错误Can‘t get Compute Engine task status.Retry..... HTTP error: 401

报错及修改: 报错:INFO: Can’t get Compute Engine task status.Retry… org.sonarqube.ws.connectors.ConnectionException: HTTP error: 401, msg: , query: org.apache.commons.httpclient.methods.GetMethod7a021f49 ERROR: Problem generating PD…

车联网解决方案(车联网设备安装部署案例)

车联网(Connected Car)是指通过无线通信技术将汽车与互联网连接起来,实现车辆与车辆之间、车辆与道路基础设施之间以及车辆与互联网之间的信息交流和实时控制。车载网关是车联网系统中的核心设备之一,负责将车辆内部的数据传输到云…

java实现钉钉机器人消息推送

项目开发中需要用到钉钉机器人发送任务状态,本来想单独做一个功能就好,但是想着公司用到钉钉机器人发送项目挺多的。所以把这个钉钉机器人抽离成一个组件发布到企业maven仓库,这样可以给其他同事用提高工作效率。 1.目录结构 2.用抽象类&…

分享6个超绝的设计素材网站,绝对好用!

设计师平时都去哪里找素材呢?收藏好这6个网站,绝对能解决你80%的素材需求,话不多说,直接上干货。 设计素材 1、菜鸟图库 https://www.sucai999.com/?vNTYxMjky 菜鸟图库是一个非常大的素材库,站内包含设计、办公、自…

前端常用的几种加密方法

文章目录 前端常用的几种加密方法md5 加密(不可逆)base64 位加密(可加密可解密)RSA 加密(公钥加密,私钥解密)AES 加密(需要密钥才能解密)CryptoJS 常用的加密方式--demo ✒️总结 前端常用的几种加密方法 在信息安全越来越受重视的今天,JS 安全一直是前端…

【文件上传】upload-labs 通关

环境准备 靶场upload-labs-env-win-0.1环境windows 靶场描述 靶场攻略 Pass-01 1.上传一句话木马 发现有类型限制 2.上传图片木马 抓包 3.修改后缀 将png修改为php. 成功上传, 4.查找文件地址 5.中国蚁剑连接 6.成功 7.源码分析 function checkFile() {var fi…

计算机组成原理——第一章

早期冯诺依曼机: 现代计算机: 五大部分: 1. 输入设备,是指将外部信息以计算机能读懂的方式输入进来,如键盘,鼠标等 2.输出设备,就是将计算机处理的信息以人所能接受的方式输出出来,比…

【问题解决】蓝牙显示已配对,无法连接,蓝牙设备显示在其他设备中。

最开始,我发现逻辑鼠标无法连接蓝牙了,怎么都不行,重连,重新配对,全不行。于是尝试用逻辑鼠标内的usb接口进行解决,重连成功。 然而,在连接耳机的时候,发现耳机音频同样无法连接&am…

2023数维杯国际赛数学建模竞赛选题建议及D题思路讲解

大家好呀,2023年第九届数维杯国际大学生数学建模挑战赛今天早上开赛啦,在这里先带来初步的选题建议及思路。 目前团队正在写B题和D题完整论文,后续还会持续更新哈,大家三连关注一下防止迷路。 注意,本文只是比较简略…

golang 解析oracle 数据文件头

package mainimport ("encoding/binary""fmt""io""os" ) // Powered by 黄林杰 15658655447 // Usered for parser oracle datafile header block 1 .... // oracle 数据文件头块解析 // KCBlockStruct represents the structure of t…

全链路压测:确保系统稳定性的关键一环

在当今高度数字化的业务环境中,系统的稳定性和性能至关重要。全链路压测作为确保系统在各种负载下依然可靠运行的关键工具,越来越受到企业的关注。本文将深入探讨全链路压测的概念及目的。 一、全链路压测概念 全链路压测是一种模拟真实用户行为、模拟全…

人人商城app禁用

api.map.baidu.com 换成 lbs.map.baidu.com

计算机网络:网络层ARP协议

在实现IP通信时使用了两个地址:IP地址(网络层地址)和MAC地址(数据链路层地址) 问题:已知一个机器(主机或路由器)的IP地址,如何找到相应的MAC地址? 为了解决…

μC/OS-II---整理学习1

目录 系统功能系统结构图 μC/OS-II是用 C 语言(绝大部分)和汇编语言(与处理器密切相关的代码)编写的。 系统功能 实时内核:μC/OS-II—内核:任务调度(oc_core.c)任务管理&#xf…

Python爬虫实战(进阶篇)—7获取每日菜价(附完整代码)

文章目录 专栏导读背景前期准备1、网址:2、分析: 请求url、请求方法、请求参数测试一个完整代码写入Excel视频展示不足:结尾 专栏导读 🔥🔥本文已收录于《Python基础篇爬虫》 🉑🉑本专栏专门针…

IaaS、PaaS、SaaS 的区别

文章1:软件系统的分类 文章2:有哪些通俗易懂的例子可以解释 IaaS、PaaS、SaaS 的区别?——原文 写的很好的两篇文章值得一看 你一定听说过云计算中的三个“高大上”的你一定听说过云计算中的三个“高大上”的概念:IaaS、PaaS和…

【Java 进阶篇】JQuery 案例:qq表情选择,表达情感的小黄脸

在我们的数字交流时代,表情符号已成为表达情感的重要方式之一。为了丰富用户的输入体验,qq表情选择功能应运而生。通过巧妙运用 JQuery,我们可以在页面中实现一个生动活泼的表情选择框,让用户轻松表达各种情感。本篇博客将深入探讨…

使用量子玻尔兹曼机推进机器学习:新范式

一、说明 量子玻尔兹曼机(QBM)是量子物理学和机器学习的前沿融合。通过利用叠加和纠缠等量子特性的力量,QBM 可以同时探索多个解决方案,使其异常擅长解决复杂问题。它使用量子位(量子计算的构建模块)以传统…

所有社区工作者!能救一个是一个

救命啊,这东西我怎么早不知道呢! 社区人到年底了各种要写的东西很烦啊!突然看到这个,真的救我大命了啊! 谁懂啊?!!平时写个东西起码两三天,试了一下这东西!…

阅读记录 The Aggregation–Heterogeneity Trade-off in Federated Learning

The Aggregation–Heterogeneity Trade-off in Federated Learning Abstract 机器学习的传统观点认为,训练模型的数据越多,模型的性能就越好。因此,人们开发了多种联邦学习方法来聚合尽可能多的本地样本。与这种观点相反,本文表…