Energy efficiency in ROS communication: a comparison across programming languages and workloads.

IF 2.9 Q2 ROBOTICS
Frontiers in Robotics and AI Pub Date : 2025-04-02 eCollection Date: 2025-01-01 DOI:10.3389/frobt.2025.1548250
Michel Albonico, Manuela Bechara Cannizza, Andreas Wortmann
{"title":"Energy efficiency in ROS communication: a comparison across programming languages and workloads.","authors":"Michel Albonico, Manuela Bechara Cannizza, Andreas Wortmann","doi":"10.3389/frobt.2025.1548250","DOIUrl":null,"url":null,"abstract":"<p><strong>Introduction: </strong>The Robot Operating System (ROS) is a widely used framework for robotic software development, providing robust client libraries for both C++ and Python. These languages, with their differing levels of abstraction, exhibit distinct resource usage patterns, including power and energy consumption-an increasingly critical quality metric in robotics.</p><p><strong>Methods: </strong>In this study, we evaluate the energy efficiency of ROS two nodes implemented in C++ and Python, focusing on the primary ROS communication paradigms: topics, services, and actions. Through a series of empirical experiments, with programming language, message interval, and number of clients as independent variables, we analyze the impact on energy efficiency across implementations of the three paradigms.</p><p><strong>Results: </strong>Our data analysis demonstrates that Python consistently demands more computational resources, leading to higher power consumption compared to C++. Furthermore, we find that message frequency is a highly influential factor, while the number of clients has a more variable and less significant effect on resource usage, despite revealing unexpected architectural behaviors of underlying programming and communication layers.</p>","PeriodicalId":47597,"journal":{"name":"Frontiers in Robotics and AI","volume":"12 ","pages":"1548250"},"PeriodicalIF":2.9000,"publicationDate":"2025-04-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://www.ncbi.nlm.nih.gov/pmc/articles/PMC11999854/pdf/","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Frontiers in Robotics and AI","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.3389/frobt.2025.1548250","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"2025/1/1 0:00:00","PubModel":"eCollection","JCR":"Q2","JCRName":"ROBOTICS","Score":null,"Total":0}
引用次数: 0

Abstract

Introduction: The Robot Operating System (ROS) is a widely used framework for robotic software development, providing robust client libraries for both C++ and Python. These languages, with their differing levels of abstraction, exhibit distinct resource usage patterns, including power and energy consumption-an increasingly critical quality metric in robotics.

Methods: In this study, we evaluate the energy efficiency of ROS two nodes implemented in C++ and Python, focusing on the primary ROS communication paradigms: topics, services, and actions. Through a series of empirical experiments, with programming language, message interval, and number of clients as independent variables, we analyze the impact on energy efficiency across implementations of the three paradigms.

Results: Our data analysis demonstrates that Python consistently demands more computational resources, leading to higher power consumption compared to C++. Furthermore, we find that message frequency is a highly influential factor, while the number of clients has a more variable and less significant effect on resource usage, despite revealing unexpected architectural behaviors of underlying programming and communication layers.

ROS通信中的能源效率:跨编程语言和工作负载的比较。
机器人操作系统(ROS)是一个广泛用于机器人软件开发的框架,为c++和Python提供了强大的客户端库。这些语言具有不同的抽象层次,表现出不同的资源使用模式,包括功率和能源消耗——这是机器人技术中日益重要的质量度量标准。方法:在本研究中,我们评估了用c++和Python实现的两个ROS节点的能源效率,重点关注了主要的ROS通信范式:主题、服务和行动。通过一系列实证实验,以编程语言、消息间隔和客户端数量为自变量,我们分析了三种范式的实现对能源效率的影响。结果:我们的数据分析表明,与c++相比,Python始终需要更多的计算资源,导致更高的功耗。此外,我们发现消息频率是一个非常有影响力的因素,而客户机数量对资源使用的影响更大,影响也更小,尽管揭示了底层编程和通信层的意外架构行为。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
CiteScore
6.50
自引率
5.90%
发文量
355
审稿时长
14 weeks
期刊介绍: Frontiers in Robotics and AI publishes rigorously peer-reviewed research covering all theory and applications of robotics, technology, and artificial intelligence, from biomedical to space robotics.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信