ubuntu mmdetection配置

news2024/10/7 10:15:58

mmdetection配置最重要的是版本匹配,特别是cuda,torch与mmcv-full

本项目以mmdetection v2.28.2为例介绍

1.查看显卡算力

因为gpu的算力需要与Pytorch依赖的CUDA算力匹配,低版本GPU可在相对高的CUDA版本下运行,相反则不行

算力不匹配运行torch训练会报如下错误:

CUDA error: no kernel image is available for execution on the device

torch和cuda适配信息参考链接

我们用的显卡是A40和4080,其中4080算力8.9,A40算力8.6

2. cuda安装


根据显卡算力,cuda选择用11.6版本

下载链接

添加权限

chmod 700 cuda_11.6.0_510.39.01_linux.run

安装

sh chmod 700 cuda_11.6.0_510.39.01_linux.run

注意要将driver取消,即按空格显示不执行即可

3.安装对应版本的torch1.13.0

参考链接

pip install torch==1.13.0+cu116 torchvision==0.14.0+cu116 torchaudio==0.13.0 --extra-index-url https://download.pytorch.org/whl/cu116

ps:可以通过如下命令查看torch与cuda算力是否匹配

>>> import torch
torch.cuda.get_arch_list()
>>> torch.cuda.get_arch_list()
['sm_37', 'sm_50', 'sm_60', 'sm_70', 'sm_75', 'sm_80', 'sm_86']
>>> torch.__version__
'1.13.0+cu116'

torch1.13.0+cu116可支持sm_86,在A40和4080上都可以运行

4.下载安装mmdetection

参考链接

git clone https://github.com/open-mmlab/mmdetection.git
cd mmdetection
pip install -v -e . -i https://pypi.tuna.tsinghua.edu.cn/simple

5. 下载安装mmcv-full

参考链接

pip install mmcv-full==1.7.1 -f https://download.openmmlab.com/mmcv/dist/cu116/torch1.13.0/index.html

ps:

mmcv和mmcv-full只需要安装一个即可,两个都安装会报各种module找不到错误
mmcv-full最高只有1.7.1版本,且不支持torch1.13.1,torch2.0对应mmcv,没有mmcv-full了
对于本篇博客配置的mmdetection来说,安装mmcv会报找不到runner错误

参考链接:
yolov5训练加速--一个可能忽视的细节(mmdetection也一样),为什么显卡使用率老是为0?_kv1830的博客-CSDN博客

解决CUDA error: no kernel image is available for execution on the device-CSDN博客

pytorch 报错 RuntimeError: CUDA error: no kernel image is available for execution on the device_可豌豆的博客-CSDN博客

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

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

相关文章

【多线程】Thread类的基本用法

文章目录 线程创建线程中断线程等待线程休眠 线程创建 方法一:用一个类 继承Thread 重写run方法 //创建一个类 继承Thread class MyThread extends Thread {//run方法是线程的入口Overridepublic void run() {while (true){System.out.println("hello Thread…

Unity 3D基础——缓动效果

1.在场景中新建两个 Cube 立方体,在 Scene 视图中将两个 Cude的位置错开。 2.新建 C# 脚本 MoveToTarget.cs(写完记得保存) using System.Collections; using System.Collections.Generic; using UnityEngine;public class MoveToTarget : M…

代理和多级代理

文章目录 代理使用场景代理过程实验演示多级代理 代理使用场景 1、拿下远程 web 服务器 2、webshell 链接不稳定,需要使用稳定的木马程序 3、远程服务器无法直接链接攻击者电脑 4、需要借助公网vps转发来自失陷服务器的木马流量 5、借助frp服务端(vps)和客户端(内网…

AI为锚,创新为帆,谱写数实融合发展新篇章

云聚园区,智享未来。9月27日,在苏州工业园区管理委员会、华为云计算技术有限公司的指导下,由SISPARK(苏州国际科技园)、华为(苏州)人工智能创新中心联合主办,东北大学工业智能与系统…

2.用Flask框架创建一个简单的Web程序

怎么安装Flask框架 在终端输入以下命令: pip install flask 验证flask安装: flask --version 编写app.py文件 app文件py如下: #导入flask框架中的两个模块 #Flask允许创建一个Flask应用实例,处理路由、请求和响应等功能 #render…

【交叉编译】tslib库交叉编译

tslib 是一个捕捉触屏事件的工具。qt 库在交叉编译的时候,提供了 -tslib 选项,使用该选项需要提前对 tslib 库进行交叉编译。 目录 1、源码下载 2、安装依赖 3、创建编译脚本 4、开始编译 1、源码下载 tslib 源码下载地址: https://github.com/lib…

oracle 与mysql兼容日期(格式:YYYY年MM月DD日)

日期类型:date 查询sql: select concat(concat(concat(to_char(END_DATE,YYYY),年),concat(to_char(END_DATE,MM),月)),concat(to_char(END_DATE,DD),日)) AS dateInfo from test显示结果:

python jieba 词性标注 中文词性分类 nlp jieba.posseg

参考:https://blog.csdn.net/yellow_python/article/details/83991967 from jieba.posseg import dt dt.word_tag_tab[好看] >>> vflag_en2cn { ‘a’: ‘形容词’, ‘ad’: ‘副形词’, ‘ag’: ‘形语素’, ‘an’: ‘名形词’, ‘b’: ‘区别词’, ‘…

2023年工业大麻行业研究报告

第一章 行业概况 1.1 定义 工业大麻行业是一个多面向且快速发展的领域,涵盖了从种植、加工到分销各个环节。与休闲大麻不同,工业大麻主要用于制造和商业用途。工业大麻的种植重点放在产生纤维、籽和生物质等有价值的产品上,而非产生高含量的…

Rt-Thread 移植3--临界段保护(KF32)

1.什么是临界段 执行下的时候不能被中断的代码段。 系统调度和外部中断都会打断,系统调度本质是产生PendSV中断。NMI FAULST和Hard FAULE除外2.代码实现 contex_gcc.c中添加 rt_base_t __attribute__((noinline)) rt_hw_interrupt_disable(void) {asm volatile(…

阿里云服务器内存型20个实例规格性能特点和适用场景汇总

阿里云服务器ECS内存型规格族属于独享型云服务器,在高负载不会出现计算资源争夺现象,因为每一个vCPU都对应一个Intel Xeon 处理器核心的超线程,内存型实例的云服务器其CPU处理器与内存配比通常为1:8,最高比约为1:20。本文介绍阿里…

Seata入门系列【6】分布式事务之TCC模式简介

1 历史背景 关于TCC的概念,最早是由Pat Helland于2007年发表的一篇名为《Life beyond Distributed Transactions:an Apostate’s Opinion》的论文提出。在该论文中,TCC还是以Tentative-Confirmation-Cancellation命名。正式以Try-Confirm-Cancel作为名称…

【运维笔记】swow源码编译安装

swow的github网址 https://github.com/swow/swow 从github中拉取源码 git pull https://github.com/swow/swow.git 编译安装 github中readme文件讲述了安装方法 这里整理了命令,进入拉取项目的目录后依次执行命令即可 #pwd 确保自己在swow目录中,如…

linux中搭建c语言环境并编译

安装gcc 安装 yum install gcc 检查 gcc --version 编译文件 1.编写test.c vim test.c #include <stdio.h>int main() {printf(" ***** \n");printf(" * o o * \n");printf("* ^ *\n");printf("* - *\n");printf…

VUE树结构实现

实现效果: 数据库表结构如下: 要求:需要有parentId,id。parentId就是父记录的id 表数据要求:一定不要让一条记录的parentid和id相同 前端代码: 注意:el-table标签里面需要加上属性,才可以有下拉箭头的样式 <el-table v-loading="listLoading" :data

· C语言在自动化如何控制系统

今日话题 C语言在自动化如何控制系统&#xff1f; 类&#xff1a;理解构造函数、属性、封装、继承、多态&#xff0c;有助于组织管理系统对象。 数据库&#xff1a;熟悉常见数据库&#xff08;如Access、SQL&#xff09;、SQL语言和操作&#xff0c;用于高效数据管理。 …

MySQL Row size too large (> 8126)

错误信息 ERROR 1118 (42000) at line 901: Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMATDYNAMIC or ROW_FORMATCOMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline. 错误原因 这个问题…

Stewart六自由度正解、逆解计算-C#和Matlab程序

目录 一、Stewart并联六自由度正解计算 &#xff08;一&#xff09;概况 &#xff08;二&#xff09;Matlab正解计算 1、参考程序一 2、参考程序二 &#xff08;三&#xff09;C#程序正解计算 1、工程下载链接 2、正解运行计算 &#xff08;四&#xff09;正程…

zabbix监控——自定义监控内容

目录 自定义监控项步骤 案例 1、明确需要执行的命令 2、创建 zabbix 的监控项配置文件&#xff0c;用于自定义 key&#xff0c;并重启zabbix-agent2 3、.在服务端验证新建的监控项 4、在 Web 页面创建自定义监控项模板 1&#xff09;创建模板 2&#xff09;创建监控项 …

振弦传感器和无线振弦采集仪在隧道安全监测的解决方案

振弦传感器和无线振弦采集仪在隧道安全监测的解决方案 隧道作为交通工程的重要组成部分&#xff0c;具有极高的安全风险&#xff0c;因此隧道安全监测是必不可少的。振弦传感器和无线振弦采集仪作为隧道安全监测的两种重要设备&#xff0c;能够有效地监测隧道的振动情况&#…