论文阅读翻译与笔记

Power-Aware Implementation of SLAM by Customizing Efficient Sparse Algebra

通过定制有效的稀疏代数实现SLAM的功率感知

摘要

自治系统中一个关键的实时任务是同步定位与映射(SLAM)。前人的工作已经提出了实时处理SLAM的硬件加速器,但他们对功耗的关注较少。为了更节能,我们提出了PISCES,它通过利用稀疏性(SLAM在之前的工作中漏掉的一个关键特征)来协同优化功耗和延迟。通过编排稀疏数据,PISCES对相关数据进行对齐,并实现对片上存储器的确定性、一次性和并行访问。因此,PISCES(i)消除了不必要的内存访问,(ii)启用流水线和并行处理。我们的FPGA实现显示,与最先进的技术相比,PISCES的功耗降低了2.5倍,执行SLAM的速度提高了7.4倍。

介绍

自动驾驶汽车、机器人和无人机等自主系统的移动性和导航依赖于同步定位和地图(SLAM)。同样,SLAM在虚拟和增强现实(VR/AR)的里程测量中也是至关重要的。为了跟踪机器人在地图中的位置,SLAM不断地处理传感器的输入,这些传感器定期地扫描环境。为了准确地运行SLAM,研究人员提出了几种[1]-[5]算法,这些算法的关键构建模块是需要大量计算的矩阵代数,如乘法、转置和反转。此外,随着高扫描频率传感器技术的不断进步,SLAM性能正成为自动系统中更快、更准确导航/里程测量的瓶颈。由于自主系统的功率预算有限,实时执行计算密集型SLAM是一个关键挑战。这就是为什么最近的一些研究加速了硬件[6]-[12]的冲击。
尽管SLAM的早期硬件实现已经获得了性能上的改进,但它们并没有特别以最有效地消耗电能为目标。第一个原因是没有考虑到SLAM中矩阵运算的稀疏结构,这导致了对片内存储器的低效访问和高功耗。此外,他们往往不太关注一系列函数之间的高数据交换比率,如果实现不当,可能会消耗高功率。例如,在之前的研究中,[6],[7],[9]中只提出了加速瓶颈-修剪函数,这对于减少延迟是必要的,但并不会有效地消耗电能。原因是,频繁地在硬件中加速的函数和在主机中执行的函数之间传输中间数据会导致对片上存储器的额外访问,并导致高功耗和超过性能优势。在其他研究中,加速讨人喜欢(即特征提取)的方法有[10],[11],这些方法可能不足以实现能量效率和低延迟。
我们加速了整个SLAM算法,同时考虑了功耗和实时性。我们的主要观察是SLAM的计算是稀疏的,并且捕获了固定大小、小而密集的矩阵代数的确定性结构。我们利用这样的稀疏性,一个被先前工作错过的SLAM的基本属性,来加速SLAM。为了实现我们的想法,我们通过定制高效稀疏代数PISCES提出了一种功率敏感的SLAM实现,它做出了以下贡献:

1、PISCES对齐相关的密集数据块,并将它们映射到片上存储器的相邻地址,以实现直接、确定性和并行访问。
2、PISCES将稀疏矩阵代数转换为一个固定大小的密集矩阵代数序列,并在一个流水线计算引擎中实现它们,该引擎只从片上存储器读取操作数一次,并在把它们写回存储器之前对中间数据执行所有必需的操作。

通过以上的贡献,PISCES不仅通过消除对片上存储器的不必要访问来降低功耗,而且通过启用流水线和并发处理来提高性能和保证实时性。为了进行评估,我们使用Xilinx Vivado高级合成(HLS)工具实现了PISCES和最先进的同行。我们在ZYNQ XC7Z020 FPGA上实现了它们。我们的结果显示,PISCES消耗的能量比最先进的设备少2.5倍,执行SLAM的速度比最先进的设备快7.4倍。

SLAM概述和相关工作

自90年代以来,已经提出了几种SLAM算法,它们分为以下几类:(i)直接方法,使用传感器输入(如RGB-D相机)创建和处理密集地图(如密集视觉SLAM [1]);(ii)间接基于特征的方法,它使用从传感器输入中提取的一组特征,而不是图像本身(例如,扩展卡尔曼滤波(EKF)[2]和定向快速和旋转简单(ORB) [3], [13] slam)。EKF和ORB方法之间的主要区别是它们的准确性。为了更准确地更新map, ORB-SLAM在性能降低的范围内使用了光束法平差 (BA)和环形闭合优化[13]、[14]。因此,只要简单性大

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值