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

文章目录

    • ❌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.rhkb.cn/news/195306.html

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

相关文章

MySQL主主复制

主1 192.168.66.15 主2 192.168.66.16 主1: roottest2 ~]# hostname master1 [roottest2 ~]# bash [rootmaster1 ~]# vim /etc/my.cnf server-id11 log-binmysql-bin auto_increment_increment2 auto_increment_offset1 replicate-do-dbdemo_db …

android初集成flutter,遇到的问题

环境 studio版本:2022.1.1 flutter版本:2.8.0 电脑:mac flutter项目总是报错,编译不过 以 Resources Root 加载 记得设置dart:主工程和flutter项目都需要设置,否则不出现手机链接 下面这个样子就是好了&…

腾讯云服务器新用户购买优惠多少钱?腾讯云新用户优惠信息来了!

腾讯云服务器新用户购买优惠多少钱?这是每个新手上路的人都会问到的问题。 如果你是一个刚刚接触云服务器的小白用户,不知道该如何选择合适的云服务器,那么你就来对了地方。今天我们将向你介绍腾讯云服务器新用户购买优惠活动,让…

ubuntu 20.04+ORB_SLAM3 安装配库教程

目录 安装ros(如果只是运行ORB-SLAM3,可以跳过安装)0. ros 安装教程1. 安装opencv2. 安装Pangolin3. 安装Eigen34.安装Python & libssl-dev5.安装boost库6.安装ceres库(不必须)7.安装Sophus库(不必须)8. 安装g20库…

jQuery UI简单的讲解

我们先进入一下问答时间,你都知道多少呢? (1)什么是jQuery UI 呢? 解答:jQuery UI 是以 jQuery 为基础的开源 JavaScript 网页用户界面代码库。包含底层用户交互、动画、特效和可更换主题的可视控件。我们…

Ubuntu 下C++数字雨

以前写过一个Window下的数字雨,像黑客帝国里那样的01数字,现在补充一版Linux下的。使用了curses库,安装方法与使用方法参照 Linux下curses函数库的详细介绍_libcurses库-CSDN博客 5-linux学习笔记之-----curses-CSDN博客 效果如下&#xf…

ERR_PNPM_INVALID_WORKSPACE_CONFIGURATION packages field missing or empty

vue执行 pnpm install命令时,报 ERR_PNPM_INVALID_WORKSPACE_CONFIGURATION  packages field missing or empty错,在网上查询了很久,也没有传出来结果,最后发现是pnpm的版本不对引起的。 我先执行的是npm install -g pnpm&…

实例解释遇到前端报错时如何排查问题

前端页面报错: 1、页面报错500,首先我们可以知道是服务端的问题,需要去看下服务端的报错信息: 2、首先我们查看下前端是否给后端传了id: 我们可以看到接口是把ID返回了,就需要再看下p_id是什么情况了。 3、我们再次请…

数字艺术藏品软件的独特创新与未来趋势

随着科技的飞速发展,数字艺术藏品软件逐渐崭露头角,为艺术爱好者们提供了一个全新的收藏方式。这类软件不仅为艺术家提供了展示作品的平台,也为收藏家们提供了收藏和分享艺术品的渠道。本文将从开发思路、技术实现、市场前景等方面探讨数字艺…

Postman批量运行用例

近期在复习Postman的基础知识,在小破站上跟着百里老师系统复习了一遍,也做了一些笔记,希望可以给大家一点点启发。 一)注意点 有上传文件的接口,需要做如下设置: 1、打开能读取外部文件的开关 2、把需要…

2023数字科技生态大会-数字安全论坛 学习笔记

监管合规->价值创造的方向,在安全领域的发展方向-安全运营服务型 ICT->数字->数据 数字安全:网络安全数据安全 传统信息化以计算为核心,数字化以数据为核心 数字安全技术发展十大趋势: 一、 数字安全技术政策环境将不…

HarmonyOS 实战项目

引言 本章将介绍如何在 HarmonyOS 上进行实际项目开发。我们将从项目需求分析开始,逐步完成项目的设计、开发、测试和上线过程。 1. 项目需求分析 项目需求分析是项目开发的关键阶段之一,它有助于确定项目的范围、目标和功能,为项目的设计和开…

【Android】画面卡顿优化列表流畅度四之Glide几个常用参数设置

好像是一年前快两年了,笔者解析过glide的源码,也是因为觉得自己熟悉一些,也就没太关注过项目里glide的具体使用对当前业务的影响;主要是自负,还有就是真没有碰到过这样的数据加载情况。暴露了经验还是不太足够 有兴趣的…

在线协作工具都有哪些?推荐这10款

如今,互联网的快速发展不仅改变了我们的生活方式,也改变了我们的工作方式。 特别是对于一些与产品设计相关的公司或团体,网络不仅为其设计提供了稳定的资源和灵感,而且为成员之间的沟通和合作提供了更大的便利。 如果您也需要为…

ke11介绍本地,会话存储

代码顺序: 1.设置input,捕获input如果有多个用属性选择符例如 input[typefile]点击事件.向我们的本地存储设置键值对 2.在点击事件外面设置本地存储表示初始化的值.点击上面的事件才能修改我们想修改的值 会话(session)浏览a数据可以写到本地硬盘,关闭页面数据就没了 本地(…

基于SSM的大学餐厅菜品推荐和点评系统设计与实现

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:Vue 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目:是 目录…

基于数据库(MySQL)与缓存(Redis)实现分布式锁

分布式锁 分布式锁:分布式锁是在分布式的情况下实现互斥类型的一种锁 实现分布式锁需要满足的五个条件 可见性:多个进程都能看到结果互斥性:只允许一个持有锁的对象的进入临界资源可用性:无论何时都要保证锁服务的可用性&#x…

怎样备份电脑文件比较安全

域智盾软件是一款功能强大的电脑监控软件,它不仅具备实时屏幕监控、行为审计等功能,还能够对电脑文件进行备份和管理。下面将介绍域智盾软件如何备份电脑文件,以确保数据安全。 1、开启文档备份功能 部署后台,然后点击文档安全&a…

无需API实现MySQL与巨量引擎的对接

通过数环通,您可以使用不到几分钟的时间即可实现MySQL与巨量引擎的对接与集成,从而高效实现工作流程自动化,降本增效! 1.产品介绍 巨量引擎是字节跳动旗下的营销服务品牌,它整合了字节跳动旗下的产品及海量内容&#…

Diffusion Models CLIP

Introduction to Diffusion Models 生成模型 主要指的是无监督学习中的生成模型,在无监督学习中的主要任务是让机器学习给定的样本,然后生成一些新的东西出来。比如:给机器看一些图片,能够生成一些新的图片出来,给机器…