英伟达Xavier调试记录_202209
- 串口通信。和网口通信相比,不能一次返回接口协议定义的完整包。需要逐字节解析才能凑齐一包通信协议格式包。为防错,通常采用固定标识、长度校验、校验和的方式保证能够区分开数据。
- 线程调度。Linux线程调度分为实时和分时调度,实时包含SCHED_FIFO(优先级[1,99],越大级别越高)、SCHED_RR、SCHED_DEADLINE(更好的实时性);分时调度SCHED_OTHERS、SCHED_IDLE。默认是SCHED_OTHERS。在以时间戳做图片名称存图调试过程,存在周期不稳定,波动大现象。采图线程通过指定CPU和线程调度方式(设置SCHDE_FIFO)和优先级(设置 80)的方式期望提高实时性能,经过长时间反复测试发现,会出现超过期望的延时和波动(如周期3s,误差能到200ms),通过打印v4l2的buff的时间戳方式,分析42分钟内数据,发现两次buff间的最大误差是-400us 和 60us。因此,确定硬件可靠,数据到内核的延时可忽略,但是图片的名称相减得到延时却存在200ms。翻看8月17日挂飞40分钟的红外相机存图数据,不存在此现象。猜测是因为给线程指定CPU和优先级的方式在xavier这种8核arm结构 (Ubuntu 18.04 内核:4.9.201)不能保证期望的实时性。最终选择不指定CPU和不设置优先级(默认SCHED_OTHERS方式)组合。
设置优先级 | 不设置优先级 | |
指定CPU | 相邻2张照片周期波动大 | 未做测试 |
不指定CPU | 未做测试 | 相邻2张照片周期波动小 |
- V4l2视频框架。这篇很棒v4l2接口解析和摄像头数据采集_liujun3512159的博客-CSDN博客_v4l2视频采集详解。
- Select多路IO复用。此函数可以设置对1个文件句柄最长等待时间,参数有3种情况,NULL(一直阻塞等待,直到有数据);tv=0(调用一次后直接返回结果);tv ! = 0(最长等待时间为设置的值,其中有数据会结束等待、超时导致结束、异常结束)。Xavier是8核Arm的CPU,CPU0-7,由于我在可见光线程当中设置了CPU6运行线程采图且select设置的tv=0,造成CPU6一直进行运算,造成死循环假象。内核日志/var/log/kern.log 中显示BUG: workqueue lockup - pool cpus=6 node=0 flags=0x0 nice=0 stuck for 67s!。stuck是困住的意思。长时间(随机的,试验发现会有1小时、2小时、4小时)运行后,内核重启,造成最后写入硬盘的照片有名称但大小0KB的异常,相片张数大约在10张,每3秒/张。猜测内核发现长时间的CPU6死循环假象,到达某种程度后自己决定重启启动。kern.log日志中计时会从0重新开始计已经证明了这点。后期修改select中tv的值,发现kern.log中无此日志出现。
- 其他。在长时间的运行,发现追加在数据包当中通过 localtime函数获取本地时间,有一包数据记录的时间相差8小时,后改用gettimeofday 获取到的struct timeval 中的秒数自己实现转换年月日的函数方式。
英伟达Xavier调试记录_202209相关推荐
- 使用VMware对英伟达xavier nx2进行刷机
刷机环境 宿主机版本:ubuntu20.04 :虚拟机ubuntu版本:18.04 :vmware版本VMware-workstation-full-17.0.0-20800274 ;sdkmange ...
- 英伟达驱动更新记录_GeForce Experience下载-英伟达显卡驱动更新器(NVIDIA GeForce Experience)下载v3.20.2.34 官方版-西西软件下载...
英伟达显卡驱动更新器(NVIDIA GeForce Experience)用来检查你的计算机的英伟达geforce驱动程序,并且将其更新到最新的版本.更新显卡驱动有利于更稳定流畅的运行游戏. 让驱动程 ...
- 英伟达驱动更新记录_N卡驱动更新软件(NVIDIA GeForce Experience) v3.16.0.122 官方版
NVIDIA GeForce Experience显卡驱动更新软件可以帮助你检查计算机的geforce驱动程序,并且将其更新到最新的版本.更新显卡驱动有利于更稳定流畅的运行游戏. 功能介绍 1.让驱动 ...
- 借力英伟达打造车规L3智能驾驶大脑,揭开德赛西威量产的“秘密”
从Tier 1到Tier 0.5,汽车电子供应商德赛西威在自动驾驶技术浪潮的演变中完成转型. 11月20日-22日,在英伟达GPU技术大上,德赛西威研究院院长黄力发表了"智能驾驶,决胜未来- ...
- 英特尔AI芯片首次商用交货!推理性能3.7倍于英伟达T4,年贡献245亿涨250%
李根 发自 旧金山 量子位 报道 | 公众号 QbitAI AI豪赌出业绩,产品启动商用--性能"吊打"友商. 今天(11月13日)在年度AI峰会上,老牌芯片霸主英特尔,交上最新 ...
- 英伟达联合芯片巨头ARM打造IOT设备的AI芯片
今年的GTC 2018比较神奇,最为重磅的消息选择了在提前秘密发布,而不是在GTC Keynote现场--英伟达重磅宣布,将联合芯片巨头ARM打造IOT设备的AI芯片专用IP,这款机器学习IP集成到A ...
- 蔚来、威马抢装的英伟达Orin,正成为高端智能车标配
不可否认,自动驾驶重构了我们定义汽车的方式. 正如评价一辆传统车的性能优良与否,我们不仅会看它的马力,还要看悬挂.刹车等综合要素.今天,一台具备自动驾驶的智能汽车,我们会关注它搭载的处理器的算力上限. ...
- 深度学习算法移动端部署设备--NVIDIA英伟达开发套件
深度学习算法移动端部署设备--NVIDIA英伟达开发套件 简介 NVIDIA Jetson AGX Xavier CSI Camera USB or CSI 简介 以下产品分模块(module)和开发 ...
- WIN10环境英伟达9系显卡tensorflow安装记录及调试过程 CUDA8.0+tensorflow-gpu1.4+CuDNN6.0
用sklearn学习完了机器学习之后,本来打算入坑深度学习.查阅了网上相关资料之后决定学习tensorflow进行入门,哪知安装就花费了一周的时间.深感老显卡安装不易,在此记录一下安装过程希望可以帮助 ...
最新文章
- 安全测试之xss攻击和mysql注入
- 学习 TList 类的实现[5]
- JavaWeb生成图片验证码
- 【图像处理】——图像内插法
- 期货大赛项目|九,fileinput插件的应用
- Qt开启本地事件循环(防止界面卡阻塞【卡死】)QEventLoop 的基本使用
- cartographer 前端两个方法:相干性匹配与非线性优化;以及回环检测方法:利用了分枝定界的相干性匹配
- java爬虫 抓取国家统计局:统计用区划代码和城乡划分代码(抓取省市区镇县办事处村委会数据)生成json
- 如何用sql语句创建一个表(简单基础)
- 96114198交易失败_通过工行网银向境外汇款提示“96111444,系统错误”,如何处理?...
- 基于python分析微信好友的性别分布,区域分布,词云分析,头像拼接
- TODA项目Part1—后端项目设置与连接数据库
- 数据融合技术——基本/常值增益/平方根/遗忘因子/自适应/限制k/扩大p的卡尔曼滤波
- Auto.js Pro安卓免ROOT引流脚本开发系列教程25网易公开课(3)-取用户性别
- Linux-进程控制详解(进程创建+进程终止+进程等待+进程程序替换)
- Java环境安装步骤
- 使用命令行登陆Mysql
- FTP主动和被动模式区别
- 钢铁侠2 蓝光BD高清下载
- ASP.NET Core中的环境Development、Staging、Production