Gazebo GPU加速【gzserver running in GPU】

news2024/9/25 11:10:05

在这里插入图片描述

文章目录

  • Gazebo GPU加速
    • 1. 问题
    • 2. 解决办法
      • 2.1 本机运行
    • 2.2 headless
    • 3. 补充
      • 3.1 如何确定的Gazebo为OpenGL渲染
      • 3.2 显卡驱动--no-opengl-files
      • 3.3 nouveau

Gazebo GPU加速

1. 问题

Gazebo仿真帧率极低,fps在10以下,同时显卡驱动已安装,但是跑Gazebo仍然消耗CPU严重。
通过nvidia-smi查看,gzservergzclient均不在GPU中消耗显存,怀疑GPU未对Gazebo有效工作。
本机硬件环境
CPU:12490F
GPU:RTX3060(GRAM 12G)
GPU Driver:535.104.05
CUDA:12.2

2. 解决办法

2.1 本机运行

笔者问题是显卡驱动安装时指定了参数--no-opengl-files,实际上Gazebo是通过OpenGL渲染的,所以应该重装显卡驱动,并不指定去除OpenGL
https://www.nvidia.cn/Download/index.aspx?lang=cn
在这里插入图片描述在这里插入图片描述下载后修改blacklist.conf

sudo vim /etc/modprobe.d/blacklist.conf

末尾添加
在这里插入图片描述

blacklist nouveau
#options nouveau modeset=0

修改后写入系统配置,并设置无图形化启动

sudo update-initramfs -u
sudo systemctl set-default multi-user.target
sudo reboot

重启后命令行登陆

sudo chmod a+x NVIDIA-Linux-x86_64-535.104.05.run
sudo ./NVIDIA-Linux-x86_64-535.104.05.run --no-x-check --no-noveau-check

32bit库也安装(不清楚有没有影响,笔者装了)
xconfig也同意更新
安装完设置图形化重启

sudo systemctl set-default graphical.target
sudo reboot

启动gazebo,打开nvidia-smi

在这里插入图片描述在这里插入图片描述在这里插入图片描述非常丝滑

2.2 headless

X11 有时需要指定显示

export DISPLAY=:0

3. 补充

3.1 如何确定的Gazebo为OpenGL渲染

笔者准备自行源码编译Gazebo
在这里插入图片描述确定了此项的作用

3.2 显卡驱动–no-opengl-files

在NVIDIA驱动程序安装过程中,参数–no-opengl-files的作用是告诉安装程序不要安装OpenGL相关的文件。OpenGL是一种图形库,用于渲染2D和3D图形,通常由图形驱动程序提供支持。
如果您选择使用–no-opengl-files参数安装NVIDIA驱动程序,系统中将不会包含NVIDIA提供的OpenGL库和文件。这可能会影响某些应用程序和功能,需要您根据自己的需求权衡利弊。在某些情况下,您可能需要安装另一个OpenGL实现,以便应用程序可以正常工作。

3.3 nouveau

在Ubuntu中,“nouveau” 是一个开源的图形驱动程序,用于支持NVIDIA的显卡。它是Linux社区开发的一个项目,旨在提供对NVIDIA显卡的基本支持,以便在Linux操作系统中使用这些显卡。
所以我们在安装官方显卡的时候需要禁用他,所以写入了blacklist
options nouveau modeset=0 是一个用于在Linux系统中配置Nouveau驱动的内核参数。这个参数的作用是禁用Nouveau驱动在内核中的核心功能,具体来说是禁用了核心的图形模式设置。

在某些情况下,当Nouveau驱动与特定的硬件或系统配置不兼容时,禁用图形模式设置可能会有助于解决一些显示问题,例如黑屏、闪烁等。通过在启动时添加 options nouveau modeset=0 参数,可以在系统加载Nouveau驱动时禁用它的图形模式设置,从而可能避免一些潜在的显示问题。

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

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

相关文章

WebRTC之FEC前向纠错协议

FEC前向纠错用于丢包恢复,对媒体包进行异或或其他算法生成冗余包进行发送。如果接收端出现丢包,可以通过冗余包恢复出原始的媒体包。FEC的代价是增加码率带宽,所以一般会根据网络状况、丢包率来动态调整FEC冗余系数,也会结合NACK/…

mtk8175添加一款camera(GC5035)流程

说明: 在MTK平台添加一款新的Camera IC 需要如下三个步骤: device目录下面添加相关宏定义。 kernel目录下面添加dts配置,即硬件管脚、时钟、电源、I2C等的配置和 添加相关的驱动。 vendor 目录下面添加相关的效果文件。 下面是自己在MTK…

在Java8的forEach()中使用break/continue

今天在开发中,使用forEach()来遍历元素执行业务操作,发现如果判断不符合某个条件时就要continue,不能继续向后执行了。但是在forEach()中不能使用for循环中的continue和break,那改如何退出呢? 答案是:使用…

利用open_cv在图像上进行点标记,文字注记,画圆、多边形、椭圆

(1)CV2中的绘图函数: cv2.line() 绘制线条cv2.circle() 绘制圆cv2.rectangle() 绘制矩形cv2.ellipse() 绘制椭圆cv2.putText() 添加注记 (2)注释 img表示需要绘制的图像color表示线条的颜色,采用颜色矩阵…

Python基础学习第一天:关于Python的简单介绍

前言 最近一批批大一新生都要开始踏入校园了,计算机专业 emmm…如果有需要学习python的,尤其是还没开学的,确实可以开始找找资料看看python了,如果是自己本来就对python感兴趣,更应该需要看看了,毕竟学校到…

【五】sql 语言 -- 概览

SQL 语言概述SQL 语言提出和发展SQL 语言的功能概述利用 SQL 语言建立数据库学生选课数据库 SCT1. 定义数据库和表 SQL-DDL创建数据库的语句—Create Database创建关系/表的语句—Create Table 2. 向表中追加元组 SQL-DML 利用 SQL 语言进行简单查询单表查询 - SELECT-FROM-WHE…

工地安全帽识别闸机联动开关 yolov7

工地安全帽识别闸机联动开关系统通过yolov7系列网络模型深度学习算法,工地安全帽识别闸机联动开关算法对施工人员的人脸、安全帽和反光衣进行识别,判断是否符合安全要求。只有当人脸识别成功且安全帽、反光衣齐全时,闸机才会打开允许施工人员…

FFmpeg支持多线程编码并保存mp4文件示例

之前介绍的示例: (1).https://blog.csdn.net/fengbingchun/article/details/132129988 中对编码后数据保存成mp4 (2).https://blog.csdn.net/fengbingchun/article/details/132128885 中通过AVIOContext实现从内存读取数据 (3).https://blog.csdn.net/fengbingchun/…

基于XGBoots预测A股大盘《上证指数》(代码+数据+一键可运行)

对AI炒股感兴趣的小伙伴可加WX:caihaihua057200(备注:学校/公司名字方向) 另外我还有些AI的应用可以一起研究(我一直开源代码) 1、引言 在这期内容中,我们回到AI预测股票,转而探索…

知识图谱实战应用25-基于py2neo的超市商品的图谱构建与商品推荐系统的实现

大家好,我是微学AI,今天给大家介绍一下知识图谱实战应用25-基于py2neo的超市商品的图谱构建与商品推荐系统的实现,本篇文章,我将指导大家如何使用py2neo和Neo4j构建一个实用的超市商品知识图谱和推荐系统。该系统可以帮助用户快速找到感兴趣的商品,并提供个性化的推荐服务…

【mysql】MySQL服务无法启动 NET HELPMSG 3534

MySQL服务无法启动 NET HELPMSG 3534 错误描述寻找原因解决方法 错误描述 mysql版本:8.1.0 mysql安装成功之后,使用net start mysql来启动mysql,然后出现了报错 MySQL服务无法启动 NET HELPMSG 3534 寻找原因 1、在cmd中,进入…

【论文笔记】最近看的时空数据挖掘综述整理8.27

Deep Learning for Spatio-Temporal Data Mining: A Survey 被引用次数:392 [Submitted on 11 Jun 2019 (v1), last revised 24 Jun 2019 (this version, v2)] 主要内容: 该论文是一篇关于深度学习在时空数据挖掘中的应用的综述。论文首先介绍了时空数…

css background实现四角边框

2023.8.27今天我学习了如何使用css制作一个四角边框,效果如下: .style{background: linear-gradient(#33cdfa, #33cdfa) left top,linear-gradient(#33cdfa, #33cdfa) left top,linear-gradient(#33cdfa, #33cdfa) right top,linear-gradient(#33cdfa, #…

阿里云 Serverless 应用引擎 2.0,正式公测!

阿里云 Serverless 应用引擎 SAE2.0 正式公测上线!全面升级后的 SAE2.0 具备极简体验、标准开放、极致弹性三大优势,应用冷启动全面提效,秒级完成创建发布应用,应用成本下降 40% 以上。 此外,阿里云还带来容器服务 Se…

【Python】基于Python的电话簿(Phonebook project)设计(代码详解)

👉博__主👈:米码收割机 👉技__能👈:C/Python语言 👉公众号👈:测试开发自动化【获取源码商业合作】 👉荣__誉👈:阿里云博客专家博主、5…

【农业生产模拟】WOFOST模型与PCSE模型实践

实现作物产量的准确估算对于农田生态系统响应全球变化、可持续发展、科学粮食政策制定、粮食安全维护都至关重要。传统的经验模型、光能利用率模型等估产模型原理简单,数据容易获取,但是作物生长发育非常复杂,中间涉及众多生理生化过程&#…

Yandex SEO和Google SEO有啥区别?5000字说必须要了解的一些事儿

最近筋斗云SEO服务有做一些俄罗斯市场的SEO,而做俄罗斯的SEO相当于就是要做Yandex的SEO。对比Google的SEO优化,其实有比较多的区别,但总体算法、逻辑等等都大致相似。本文从Linus自己的研究和搜集的公开信息,对比一下Google和Yand…

校园安全Ai视频分析预警算法

校园安全Ai视频分析预警算法通过yolov5python深度学习算法网络模型,校园安全Ai视频分析预警算法对学生的行为进行智能监测和预警如识别学生打架斗殴、抽烟、翻墙、倒地以及异常聚集等行为,及时发出预警通知。YOLO的结构非常简单,就是单纯的卷…

Python框架【模板继承 、继承模板实战、类视图 、类视图的好处 、类视图使用场景、基于调度方法的类视图】(四)

👏作者简介:大家好,我是爱敲代码的小王,CSDN博客博主,Python小白 📕系列专栏:python入门到实战、Python爬虫开发、Python办公自动化、Python数据分析、Python前后端开发 📧如果文章知识点有错误…

【Apollo学习笔记】——规划模块TASK之PIECEWISE_JERK_PATH_OPTIMIZER

文章目录 前言PIECEWISE_JERK_PATH_OPTIMIZER功能简介PIECEWISE_JERK_PATH_OPTIMIZER相关配置PIECEWISE_JERK_PATH_OPTIMIZER总体流程OptimizePathpiecewise_jerk_problem二次规划问题标准形式定义优化变量定义目标函数设计约束OptimizeFormulateProblem计算QP系数矩阵Calculat…