IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 30系显卡怎么配置rangenet++和SuMa++ -> 正文阅读

[人工智能]30系显卡怎么配置rangenet++和SuMa++

说在前面

相信做SLAM的或多或少都听说过大名顶顶的SuMa++,可以说SuMa++是目前为止将语义信息用到激光SLAM中做好的的例子之一了,这里就不介绍SuMa++这个方法的主要工作了,感兴趣的朋友可以去我的另一篇博客看看。

为什么要写这样一篇博客呢?之前在公司使用的是1650的显卡,配置的环境是Ubuntu 18.04+NVIDIA driver 455+CUDA 10.1+cudnn 7.6.5+TensorRT 5.0.1.5,用1650的朋友可以直接照抄,都是我多次重装系统采坑测试出来的。

但问题是最近回学校了,而且换了一台新机器AMD 5800H+nvidia 3060,我已经做好跑任何程序都不会超过一秒的准备了,但是没想到新环境的配置会如此痛苦,此次采坑共花费一周时间,重装系统近10次。希望看到的朋友点个赞。

NVIDIA driver

CUDA 11.1

这里是最坑的地方,最开始不知道30系顶顶显卡只能使用CUDA 11及以上版本,我在CUDA 10的多个版本都试了一遍 ,到最后一部TensorRT都能安装成功,但是就是跑不出结果,调试代码发现程序卡在buildCUDAEngine这一行,不知是什么原因。后经高人指点,高人说他用PyTorch从去年底开始就要求30系显卡全部使用CUDA 11,我突然意识到我应该试试CUDA 11。

CUDA 11的安装也很简单,从官网的下载入口下载即可(没有科学上网的话可能会下载很慢),选择自己对应的版本,我的是Linux -> x86_64 -> Ubuntu -> 18.04 -> deb (local),注意这里推荐使用deb方式安装,按照下载链接下方的步骤一步一步安装,貌似使用runfile的方式安装的话,会缺少几个补丁,在安装TensorRT的时候会很麻烦,需要单独下载这几个补丁来安装。

cudnn

cudnn选择的版本是8.1.0,同样从官网的下载入口,选择Download cuDNN v8.1.0 (January 26th, 2021), for CUDA 11.0,11.1 and 11.2,下载源码手动安装,选择cuDNN Library for Linux (x86_64)。具体安装方式是将文件解压之后复制到系统路径下,然后给文件权限,可以参照这篇博客Ubuntu18.04安装CUDA10、CUDNN

TensorRT 7.2.3

rangenet++的作者是推荐使用TensorRT 5.1.5的,并且测试啥的都是在这个版本上进行的。但是我们已经安装了CUDA 11.1,TensorRT 5.1.5是没办法在CUDA 11.1上面跑的,所以我选择了一个最早能支持CUDA 11.1的TensorRT 7.2.3,但是既然和原作者的版本不一致,TensoRT到时候和rangenet++适配的时候,免不了要修改rangenet++的代码,这个要做好心里准备。

TensorRT 7.2.3的安装也很简单,从官方下载入口选择TensorRT 7.2.3 for Ubuntu 18.04 and CUDA 11.1 & 11.2 DEB local repo package进行安装。安装方法可以照抄官方文档
在这里插入图片描述
需要注意的是使用pip安装依赖的时候可以同时pip和pip3都安装(我使用的都是pip3),一招解决不必要的问题。

测试是否安装成功,以及能否跑tensorrt。
在终端输入dpkg -l | grep TensorRT,输出如图。

在这里插入图片描述

终端依次输入python3 import tensorrt tensorrt.__version__,如果能像下面一样成功显示版本号,则安装成功。

在这里插入图片描述
这一步完成只能说明TensorRT和python的依赖安装成功,并不能说明TensoRT就能使用了,需要再测试一下。安装成功之后会在/usr/local路径下面有一个tensorrt的文件夹,复制出来,进入到sample文件夹下,在终端输入命令make,这一步会在/bin中生成一些可执行文件,运行./sample_mnist,如果能成功辨别手写数字,则成功。

在这里插入图片描述

rangenet++安装 && debug && build

先从github上把源代码Git下来,readme文档里面有Git的方式。

在这里插入图片描述
在编译之前需要修改基础源代码,每一处修改都是我摸索出来的,具体理由都是看编译报错的提示来的。

rangenet_lib/cmake/tensorrt-config.camke

具体修改方式如下图,注释的地方是源代码。
在这里插入图片描述

rangenet_lib/include/netTensorRT.hpp

把第十一行#include <NvOnnxParserRuntime.h>注释掉。
在这里插入图片描述

rangenet_lib/src/netTensorRT.hpp

  1. 450+行处,如下修改。

在这里插入图片描述

  1. 500+行处,如下修改。

在这里插入图片描述

  1. 530+行处,如下修改。

在这里插入图片描述

至此,便宜就能完成了,尽管有很多warning,但是勉强能运行了,结果也都是正确的。

在这里插入图片描述
按照github上的readme文件的运行,就能看到结果了!可以愉快地使用rangenet++了,SuMa++的配置一步一步来就OK,有人想看我再写。

在这里插入图片描述

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-10-15 11:47:52  更:2021-10-15 11:48:45 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/27 10:36:44-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码