zl程序教程

您现在的位置是:首页 >  Java

当前栏目

RobotPerf基准测试-译

2023-02-18 16:33:37 时间

时延性能从66.82ms到238.13ms。

机器人硬件和机器人软件的无数组合使得评估机器人系统性能具有挑战性,特别是在架构中立、代表性和可复制的方式下。RobotPerf解决了这个问题,提供了一个参考性能基准测试套件,用于评估CPU、GPU、FPGA和其他计算加速器的机器人计算性能。

任务愿景标准

RobotPerf由来自行业、学术界和研究实验室的机器人领导者组成的联盟代表,是一个开放项目,其任务是建立开放、公平和有用的机器人基准,这些基准是技术不可知的、供应商中立的,并对硬件、软件和服务的机器人计算性能进行公正评估。基准测试有助于评估绩效。性能信息可以帮助机器人专家设计更高效的机器人系统,并为每个机器人应用选择合适的硬件。它还可以帮助理解实现相同功能的不同算法之间的权衡。RobotPerf基准测试符合机器人标准,这样你就不用花时间重新发明轮子,重新开发已经有效的东西。使用ROS 2作为其共同基准进行基准测试。RobotPerf还与ROS生态系统中与计算性能和基准测试相关的标准化举措保持一致,如REP 2008(ROS 2硬件加速架构和惯例)和REP 2014(ROS 2中的基准测试性能)。


RobotPerf是一个开放的参考基准测试套件,用于以ROS 2作为其通用基准来公平评估机器人计算性能,以便机器人架构师能够对其机器人系统的硬件和软件组件做出明智的决定。 该项目的任务是建立开放、公平和有用的机器人基准,这些基准与技术无关,与供应商无关,并对硬件、软件和服务的机器人计算性能进行无偏见的评估。作为机器人技术中的参考性能基准测试套件,RobotPerf可用于评估包括CPU、GPU、FPGA和其他计算加速器在内的计算子系统的机器人计算性能。基准测试旨在代表机器人系统的性能,并可在不同的机器人系统中重现。为此,RobotPerf建立在ROS2之上,ROS2是机器人应用程序开发的事实标准。



动机 为什么ROS 2用于机器人性能基准测试? 机器人行为采用计算图的形式,数据在计算节点之间、通过物理网络(通信总线)流动,同时映射到底层传感器和致动器。如今,为机器人构建这些计算图的流行选择是机器人操作系统(ROS)[^1],这是一个机器人应用程序开发框架。ROS通过提供库、通信基础设施、驱动程序和工具,使您能够构建计算图并创建机器人行为。如今,大多数制造真正机器人的公司都使用ROS或类似的事件驱动软件框架。ROS因此成为机器人领域的通用语言,数百家公司和数千名开发人员每天都在使用它。ROS 2[^2]从头开始重新设计,以解决ROS中的一些挑战,并解决了构建可靠机器人系统中的许多问题。 标准驱动的基准测试 RobotPerf基准与机器人标准保持一致(并将做出贡献),这样您就不会花时间重新发明轮子,重新开发最适用的东西。特别是使用机器人操作系统2(ROS 2)作为其共同基准进行基准测试。RobotPerf还与ROS生态系统中与计算性能和基准测试相关的标准化举措保持一致,如REP 2008(ROS 2硬件加速架构和惯例)和REP 2014(ROS 2中的基准测试性能)。


一般概念 术语 本规范遵循REP 2014命名法。有关详细信息,请参阅本文档。 类别 每个基准应分类为以下之一: a感知b定位c控制d导航e操纵 感知基准定位基准控制基准导航基准操纵基准 为了反映基准的类别,基准的ROS 2包名称应以相应的类别标识符字母(例如,如果与Perception相关,则为a)作为前缀。 ID(ID) 每个基准应该有一个在所有基准中唯一的关联ID。ID应该是一个字符串,并对应于与该基准相关联的ROS 2包名的前缀,该前缀包括类别(例如ID:a1,包名:a1_perception_2node)。ID应用于标识RobotPerf套件中的基准。 ROS 2-天然 每个基准应该是一个ROS 2包,应该使用常见的ROS 2开发流程(构建工具、元构建工具等)进行构建和运行。 计算目标 每个计算目标将标记一个符号,表示其组,如下所示: 边缘/嵌入->? 工作站->?️ 数据中心->? 云目标->⛅ 这样,目标可以很容易地分组和比较。 指标 应根据REP 2014,设计基准来衡量一个或多个指标。每个指标应与一个度量单位相关联。 基准的机器可读定义 为了便于其他工具使用基准信息,应以机器可读格式定义每个基准。格式将使用YAML数据序列化语言。名为benchmark的YAML文件。yaml应该放在ROS 2包的根中,描述每个基准的任何结果。 有关实际示例,请参阅模板。 基准的易读性 为了便于阅读,每个基准测试都将包含一个README。描述基准及其结果的md文件。自述文件。md文件应放置在ROS 2包的根目录中,并将根据机器可读的基准定义(benchmark.yaml文件)自动生成