Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3404397.3404459acmotherconferencesArticle/Chapter ViewAbstractPublication PagesicppConference Proceedingsconference-collections
research-article

Memory-Centric Communication Mechanism for Real-time Autonomous Navigation Applications

Published: 17 August 2020 Publication History

Abstract

There has been a remarkable increase in the speed of AI development over the past few years. Artificial intelligence and deep learning techniques are blooming and expanding in all forms to every sector possible. With the emerging intelligent autonomous navigation systems, both memory allocation and data movement are becoming the main bottlenecks in inter-process communication procedures, especially in supporting various types of messages between multiple programming languages. To reduce significant memory allocation and data movement cost, we propose a novel memory-centric mechanism, which includes a virtual layer based architecture and a pre-record memory allocation algorithm. Furthermore, we implement a memory-centric communication framework named Z-framework based on the proposed mechanism to achieve high efficient IPC procedures in autonomous navigation systems. Experimental results show that Z-framework is able to gain up to 41% and 35% performance improvement compared with the approach used in ROS2, which is an industry standard and the state-of-the-art approach used in CyberRT, respectively.

References

[1]
[1] Abadi, M., et al. Tensorflow: A system for large-scale machine learning. In Symposium on Operating Systems Design and Implementation, 2016.
[2]
[2] Jia, Y., Shelhamer, E., Donahue, J., Karayev, S., Long, J., Girshick, R., ... Darrell, T. (2014, November). Caffe: Convolutional architecture for fast feature embedding. In Proceedings of the 22nd ACM international conference on Multimedia (pp. 675-678). ACM.
[3]
[3] Chen, T., Li, M., Li, Y., Lin, M., Wang, N., Wang, M., ... Zhang, Z. (2015). Mxnet: A flexible and efficient machine learning library for heterogeneous distributed systems. arXiv preprint arXiv:1512.01274.
[4]
[4] Bauckhage C. Numpy/scipy recipes for data science: k-medoids clustering. Researchgate. Net, February, 2015.
[5]
[5] Ziyue Jiang, Yifan Gong, JidongZhai, Yuping Wang, Wei Liu, Hao Wu, Jiangming Jin. Message Passing Optimization in Robot Operating System. Network and Parallel Computing, 2019
[6]
[6] M. Quigley, K. Conley, B. Gerkey, J. Faust, T. Foote, J. Leibs, R. Wheeler, A. Y. Ng. ROS: an open-source Robot Operating System. Proc. of IEEE International Conference on Robotics and Automation Workshop on Open Source Software, vol. 3. 2009.
[7]
[7] S. Cousins, B. Gerkey, K. Conley, W. Garage. Sharing software with ROS. IEEE Robotics & Automation Magazine, vol. 17, no. 2, pp. 12-14, 2010.
[8]
[8] Maruyama Y, Kato S, Azumi T. Exploring the performance of ROS2. InProceedings of the 13th International Conference on Embedded Software 2016 Oct 1 (p. 5). ACM.
[9]
[9] G. Pardo-Castellote. OMG Data-Distribution Service: Architectural Overview. Proc. of IEEE International Conference on Distributed Computing Systems Workshops. 2003.
[10]
[10] ROS2. http://design.ros2.org/articles/ros_on_dds.html.
[11]
[11] Waypoint. https://en.wikipedia.org/wiki/Waypoint.
[12]
[12] Rao, Qing, and J. Frtunikj. Deep Learning for Self-Driving Cars: Chances and Challenges. 2018 IEEE/ACM 1st International Workshop on Software Engineering for AI in Autonomous Systems (SEFAIAS) 2018.
[13]
[13] Baidu Apollo. http://apollo.auto/cyber.html
[14]
[14] ethzasl_message_transport. Website Available: https://github.com/ethz-asl/ros-message-transport.
[15]
[15] N. Dantam, M. Stilman, ”Robust and Efficient Communication for Real-Time Multi-Process Robot Software”, in IEEE-RAS International Conference on Humanoid Robots (Humanoids), Osaka, Japan, 2012.
[16]
[16] P. Druschel, L. L. Peterson, ”Fbufs: A High-Bandwidth Cross-Domain Transfer Facility”, in Proceedings of the 14th ACM Symposium on Operating Systems Principles (SOSP), Asheville, NC, USA, 1993.
[17]
[17] Mi, Zeyu, et al. ”Skybridge: Fast and secure inter-process communication for microkernels.” Proceedings of the Fourteenth EuroSys Conference 2019. 2019.
[18]
[18] A. Elkady and T. M. Sobh. Robotics Middleware: A Comprehensive Literature Survey and Attribute-Based Bibliography. Journal of Robotics. 2012.
[19]
[19] Protocol Buffers. User Guide. https://developers.google.com/protocol-buffers/docs/overview?csw=1
[20]
[20] Einhorn, Erik, et al. ”Mira-middleware for robotic applications.” 2012 IEEE/RSJ International Conference on Intelligent Robots and Systems. IEEE, 2012.
[21]
[21] Huang, Albert S., Edwin Olson, and David C. Moore. LCM: Lightweight communications and marshalling. 2010 IEEE/RSJ International Conference on Intelligent Robots and Systems. IEEE. 2010.
[22]
[22] Rao A, Visali M, Shailendra S, et al. Reliable robotic communication using multi-path TCP[C]//2017 9th International Conference on Communication Systems and Networks (COMSNETS). IEEE, 2017: 429-430.
[23]
[23] Metta, Giorgio, Paul Fitzpatrick, and Lorenzo Natale. YARP: yet another robot platform. International Journal of Advanced Robotic Systems 3.1 (2006).
[24]
[24] Data Distribution Services (DDS) v1.4, 2015. http://www.omg.org/spec/DDS/1.4/.
[25]
[25] Yu-Ping Wang, Wende Tan, Xu-Qiang Hu, Dinesh Manocha and Shi-Min Hu. TZC: Efficient Inter-Process Communication for Robotics Middleware with Partial Serialization, 2018; arXiv:1810.00556.
[26]
[26] Wei H, Shao Z, Huang Z, Chen R, Guan Y, Tan J, Shao Z. RT-ROS: A real-time ROS architecture on multi-core processors. Future Generation Computer Systems. 2016 Mar 1;56:171-8.
[27]
[27] Y. Wang, S. Liu, X. Wu, and W. Shi, ”CAVBench: A benchmark suite for connected and autonomous vehicles,” in 2018 IEEE/ACM Symposium on Edge Computing (SEC), 2018, pp. 30–42.
[28]
[28] Sugata Y, Ohkawa T, Ootsu K, Yokota T. Acceleration of publish/subscribe messaging in ROS-compliant FPGA component. InProceedings of the 8th International Symposium on Highly Efficient Accelerators and Reconfigurable Technologies 2017 Jun 7 (p. 13). ACM.
[29]
[29] Wei H, Huang Z, Yu Q, Liu M, Guan Y, Tan J. RGMP-ROS: A real-time ROS architecture of hybrid RTOS and GPOS on multi-core processor. In2014 IEEE International Conference on Robotics and Automation (ICRA) 2014 May 31 (pp. 2482-2487). IEEE.
[30]
[30] Saito Y, Sato F, Azumi T, Kato S, Nishio N. ROSCH: Real-Time Scheduling Framework for ROS. In2018 IEEE 24th International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA) 2018 Aug 28 (pp. 52-58). IEEE.
[31]
[31] Liétar, Paul, et al. ”Snmalloc: a message passing allocator.” Proceedings of the 2019 ACM SIGPLAN International Symposium on Memory Management. 2019.
[32]
[32] Bonwick, Jeff. ”The slab allocator: An object-caching kernel memory allocator.” USENIX summer. Vol. 16. 1994.
[33]
[33] Huang, Xiaohuang, et al. ”Xmalloc: A scalable lock-free dynamic memory allocator for many-core machines.” 2010 10th IEEE International Conference on Computer and Information Technology. IEEE, 2010.
[34]
[34] Ghemawat, Sanjay, and Paul Menage. ”Tcmalloc: Thread-caching malloc.” (2009).
[35]
[35] Masmano, Miguel, et al. ”A constant-time dynamic storage allocator for real-time systems.” Real-Time Systems 40.2 (2008): 149-179.
[36]
[36] Evans, Jason. ”A scalable concurrent malloc (3) implementation for FreeBSD.” Proc. of the bsdcan conference, ottawa, canada. 2006.

Cited By

View all
  • (2021)Accelerating GPU Message Communication for Autonomous Navigation Systems2021 IEEE International Conference on Cluster Computing (CLUSTER)10.1109/Cluster48925.2021.00029(181-191)Online publication date: Sep-2021

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
ICPP '20: Proceedings of the 49th International Conference on Parallel Processing
August 2020
844 pages
ISBN:9781450388160
DOI:10.1145/3404397
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 17 August 2020

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Autonomous Navigation System
  2. Inter-process Communication
  3. Memory-centric Techniques

Qualifiers

  • Research-article
  • Research
  • Refereed limited

Conference

ICPP '20

Acceptance Rates

Overall Acceptance Rate 91 of 313 submissions, 29%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)28
  • Downloads (Last 6 weeks)3
Reflects downloads up to 15 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2021)Accelerating GPU Message Communication for Autonomous Navigation Systems2021 IEEE International Conference on Cluster Computing (CLUSTER)10.1109/Cluster48925.2021.00029(181-191)Online publication date: Sep-2021

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

HTML Format

View this article in HTML Format.

HTML Format

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media