Parallel Data Stream Scheduling Without Shared Memory Bottlenecks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In parallel computing applications with data streaming requirements, the need for multiple processing units to work on overlapping data windows leads to increased memory accesses, time delays, and computational overhead due to exclusive memory access and network traffic, necessitating a shared main memory for data storage.

Innovation Solution

A processing device and method that distribute data to multiple processing units using a scheduler module to assign parts of a data stream to individual units, allowing each to monitor and process specific parts without the need for a shared main memory, reducing memory accesses and computational overhead.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple processing units access data from shared main memory for parallel processing, then processing throughput is improved, but memory access time and computational overhead increase

Engineering Contradiction:
Improveprocessing throughputVSAvoidmemory access time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent segments the data stream into multiple parallel data streams, with each processing unit receiving and processing a specific segment independently. This eliminates the need for multiple processing units to access the same shared memory locations simultaneously, thereby reducing memory access conflicts and time delays while maintaining high processing throughput through parallel operation of segmented data

Inventive Principle:
Principle #1Segmentation

2Productivity

If multiple processing units access overlapping data windows from shared memory, then processing capability is improved, but network traffic and computational overhead increase

Engineering Contradiction:
Improveprocessing capabilityVSAvoidcomputational overhead
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent performs preliminary actions by pre-processing the input data stream into multiple parallel data streams before distribution to processing units. This preliminary segmentation and preparation of data eliminates the need for repeated reading of overlapping data from shared memory during processing, thereby reducing network traffic and computational overhead while maintaining the capability to process overlapping data windows efficiently

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If complete data set is stored in shared memory for parallel access, then data availability is improved, but memory access conflicts and time delay increase

Engineering Contradiction:
Improvedata availabilityVSAvoidtime delay
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent segments the complete data set into multiple parallel data streams that are distributed to different processing units. This segmentation maintains data availability for all processing units while eliminating the need for simultaneous access to the same shared memory locations, thereby reducing memory access conflicts and time delays while preserving the ability to access required data

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS12591454B2Processing device and method for distributing data to a plurality of processing units
Publication Date: 2026.03.31 AIRBUS (SAS)
  • US12591454B2 patent drawing
  • US12591454B2 patent drawing
  • US12591454B2 patent drawing

AI summary

A processing device for parallel computing and a corresponding method include processing units, a scheduler module, a first common data transmission element, and a first input interface. The first input interface is configured to receive a continuous first data stream and transmit the first data stream via the first common transmission element. Each of the processing units is connected to the first common transmission element and configured to receive data transmitted via the first common transmission element. The scheduler module is in electronic communication with each of the processing units and configured to assign parts of the first data stream to each of the processing units for simultaneous processing. Each of the processing units is configured to monitor the complete first data stream, select the parts of the first data stream assigned by the scheduler module, and perform processing operations on the selected parts of the first data stream.