A Containerized Microservice Architecture for a ROS 2 Autonomous Driving Software: An End-to-End Latency Evaluation
Tobias Betz, Long Wen, Fengjunjie Pan, Gemb Kaljavesi, Alexander Zuepke, Andrea Bastoni, Marco Caccamo, Alois Knoll, Johannes Betz
TL;DR
This paper tackles end-to-end latency and resource utilization in a containerized ROS 2 Autoware autonomous driving software stack. It proposes a modular microservice architecture with eight ROS 2 containers built from a common base image and an accompanying CI pipeline, then evaluates three deployment modes (bare-metal, single-container, multi-container) on two hardware platforms (x86 and aarch64) using DDS and ROS 2 benchmarks plus a real-world Autoware application in AWSIM. Key findings show that containerization can reduce mean end-to-end latency by about 5–8% and lower maximum latencies, while also reducing CPU and memory usage, with results consistent across platforms though nuanced by workload. These insights inform practical deployment decisions for software-defined vehicles and provide an open-source testbed for future research on containerized autonomous driving pipelines.
Abstract
The automotive industry is transitioning from traditional ECU-based systems to software-defined vehicles. A central role of this revolution is played by containers, lightweight virtualization technologies that enable the flexible consolidation of complex software applications on a common hardware platform. Despite their widespread adoption, the impact of containerization on fundamental real-time metrics such as end-to-end latency, communication jitter, as well as memory and CPU utilization has remained virtually unexplored. This paper presents a microservice architecture for a real-world autonomous driving application where containers isolate each service. Our comprehensive evaluation shows the benefits in terms of end-to-end latency of such a solution even over standard bare-Linux deployments. Specifically, in the case of the presented microservice architecture, the mean end-to-end latency can be improved by 5-8 %. Also, the maximum latencies were significantly reduced using container deployment.
