Dynamic Communication Resource Allocation in Data Processing Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing mechanisms for allocating communication resources, such as scoreboards, in data processing systems are inefficient, leading to dependencies between unrelated processes and delays due to resource unavailability.

Innovation Solution

A data processing system with a pool of communication resources that tracks the usage of these resources by producer and consumer processes, allowing for dynamic allocation based on availability, thereby avoiding unnecessary dependencies and delays.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If existing mechanisms for allocating communication resources are used, then resource allocation can be performed, but allocation efficiency is low and delays occur due to resource unavailability

Engineering Contradiction:
Improveresource allocation efficiencyVSAvoiddelays due to resource unavailability
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent implements dynamic resource allocation by transitioning from static pre-allocation to runtime allocation based on actual process needs. The system monitors process states and allocates communication resources (scoreboards) dynamically when processes require them, rather than reserving resources in advance. This dynamic approach improves allocation efficiency and reduces delays caused by resource unavailability.

Inventive Principle:
Principle #15Dynamics

2Adaptability or versatility

If communication resources are allocated from a pool, then multiple processes can share resources, but unnecessary dependencies are created between unrelated processes

Engineering Contradiction:
Improveresource sharing capabilityVSAvoidprocess dependencies
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent extracts the resource allocation and tracking functionality into a separate management system. Instead of having processes directly interact with the resource pool and create interdependencies, a dedicated resource tracking mechanism monitors and manages communication resource allocation independently. This separation allows processes to share resources through a controlled interface without creating direct dependencies between them.

Inventive Principle:
Principle #2Taking out (Extraction)

3Reliability

If scoreboards are used to synchronize producer and consumer processes, then process synchronization is achieved, but resource allocation becomes inefficient

Engineering Contradiction:
Improveprocess synchronizationVSAvoidresource allocation efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements a feedback mechanism where the system continuously monitors the state of producer and consumer processes and adjusts scoreboard allocation accordingly. The resource tracking mechanism receives feedback about process states and dynamically allocates or releases scoreboards based on actual synchronization needs. This ensures reliable process synchronization while improving resource allocation efficiency by releasing resources when no longer needed.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS12307293B2Data processing systems
Publication Date: 2025.05.20 ARM LTD
  • US12307293B2 patent drawing
  • US12307293B2 patent drawing
  • US12307293B2 patent drawing

AI summary

A data processing system is disclosed that includes one or more processors that can perform producer processes to produce work and consumer processes that can consume work produced by a producer process. The system includes a pool of plural communication resources that may be used for communications between a producer process and a consumer process. The system tracks the usage of communication resources of the pool of communication resources, and allocates a communication resource from the pool of communication resources based on the tracking.