Shared Data Buffers for High-Throughput Vehicle Pipelines
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing middleware frameworks for vehicle data processing suffer from significant overhead due to unnecessary data copies and suboptimal implementations, leading to performance issues in data pipelines, especially in high-bandwidth scenarios.
Innovation Solution
A middleware solution that uses separate data and control channels for each node, allowing shared data buffers among nodes requiring the same type of data, while maintaining independent control and eliminating unnecessary data copies.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional middleware frameworks are used for vehicle data processing, then data can be processed through multiple nodes, but significant overhead is introduced due to unnecessary data copies and suboptimal implementations
Solution Approach 1:
The patent segments the data pipeline into distinct data channels and control channels, allowing independent optimization of each. Data channels handle high-bandwidth sensor data while control channels manage synchronization and coordination, eliminating the overhead of unified middleware processing for all data types.
Solution Approach 2:
The patent eliminates unnecessary data copies by implementing a buffer sharing mechanism where buffers are allocated once and shared across multiple consumer nodes through reference counting and synchronization barriers, rather than copying data between each node in the pipeline.
2Productivity
If data is shared among multiple consumer nodes, then resource efficiency improves, but synchronization complexity increases to ensure all nodes access data correctly
Solution Approach 1:
The patent introduces control nodes as intermediaries that manage buffer sharing and synchronization between consumer nodes. These control nodes handle the complexity of coordination, allowing data nodes to focus on their primary processing functions while maintaining efficient buffer sharing.
Solution Approach 2:
The patent implements preliminary synchronization actions through barrier mechanisms and reference counting that are set up before data consumption begins. This preliminary setup automates the synchronization process, reducing the complexity of real-time coordination between nodes.
3Speed
If high-bandwidth data is processed quickly, then autonomous driving safety improves, but traditional middleware introduces performance bottlenecks
Solution Approach 1:
The patent extracts the middleware layer from the critical data processing path, replacing it with a lightweight buffer sharing mechanism. This removes the overhead of middleware processing from the high-speed data path while maintaining necessary coordination functions through separate control channels.
Solution Approach 2:
The patent replaces the mechanical middleware processing system with a more efficient buffer reference system that uses memory-mapped buffers and atomic operations for synchronization, eliminating the performance penalties of traditional middleware copying and processing.
Data Source
AI summary
Described techniques include producing data at a producer node of a data pipeline for processing vehicle data characterizing an operation of a vehicle. The producer node may select a data buffer from a plurality of shared data buffers shared by at least two consumer nodes and write the data to the selected data buffer. Event data may be received at an event producer node of the data pipeline, and the event data may be written by the event producer node to at least one control buffer of a plurality of shared control buffers that are shared by the at least two consumer nodes. Synchronized consumption of the data from the selected data buffer by each of the at least two consumer nodes may thus be executed, based on the event data, to thereby complete the processing and characterize the operation of the vehicle.


