Real-Time System Task Allocation via Dynamic Resource Refinement

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Predicting resource utilization in real-time computer systems is challenging due to imperfect representations of software modules in higher-order programming languages, inaccurate models of physical resources, and hidden interactions, which complicates the allocation of tasks to resources, especially in safety-critical systems.

Innovation Solution

A method that measures real resource utilization during execution and refines predictions to improve configuration by determining infrastructure tasks and messages, allocating tasks and messages based on refined predictions, and using these measurements to adjust resource allocation dynamically.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If resource utilization prediction is performed using higher-order programming language representations and abstract models, then the prediction process is simplified and more manageable, but the prediction accuracy deteriorates due to imperfections in language representation and model inaccuracies

Engineering Contradiction:
Improveprediction process complexityVSAvoidresource utilization prediction accuracy
Core Design Contradiction:
Device complexityVSMeasurement precision

Solution Approach 1:

The system performs preliminary actions by instrumenting the software modules during the development phase to embed measurement code that collects actual resource utilization data during execution. This preliminary measurement infrastructure is built before runtime prediction, allowing the system to gather empirical data that compensates for the inaccuracies of abstract models and higher-order language representations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback by continuously measuring actual resource utilization during task execution and using these measurements to refine and update prediction models. The measured data flows back into the prediction mechanism, creating a closed-loop system that progressively improves prediction accuracy while maintaining manageable complexity through iterative refinement.

Inventive Principle:
Principle #23Feedback

2Reliability

If comprehensive resource utilization prediction is attempted to ensure safety-critical requirements, then system reliability improves, but the difficulty of prediction increases due to hidden interactions and emergent phenomena

Engineering Contradiction:
Improvesafety-critical system reliabilityVSAvoidprediction difficulty
Core Design Contradiction:
ReliabilityVSDifficulty of detecting and measuring

Solution Approach 1:

The system applies self-service by having the software modules automatically instrument themselves with measurement code during development. The modules self-monitor their own resource consumption and interactions, eliminating the need for complex external analysis tools to detect hidden interactions. This self-measurement capability enables comprehensive reliability verification without proportionally increasing prediction difficulty.

Inventive Principle:
Principle #25Self-service

3Ease of operation

If static resource allocation is used based on initial predictions, then configuration simplicity is maintained, but resource utilization efficiency deteriorates due to inability to adapt to actual execution patterns

Engineering Contradiction:
Improveconfiguration simplicityVSAvoidresource utilization efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The system transitions from static to dynamic resource allocation by continuously measuring actual resource utilization during runtime and automatically adjusting task-to-resource assignments based on empirical data. The configuration evolves dynamically as the system learns actual execution patterns, maintaining operational simplicity through automated adaptation rather than manual reconfiguration.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes allocation parameters dynamically by modifying task assignment configurations based on measured resource utilization data. When measurements reveal underutilized resources or bottlenecks, the system automatically adjusts allocation parameters such as task-period assignments and resource capacity distribution, improving efficiency while keeping the configuration process simple through automated parameter optimization.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentEP4343548A1Method for configuring a real-time computer system
Publication Date: 2024.03.27 TTTECH AUTO AG
  • EP4343548A1 patent drawingFigure 1
  • EP4343548A1 patent drawingFigure 2~3
  • EP4343548A1 patent drawingFigure 4~8

AI summary

A Method for configuring a real-time computer system (RTS, RTSa) comprising resources for executing tasks (AT1-AT4, IT1-IT5, ITM_M1, ITM_OUT), wherein at least one of the tasks is a real time task; - wherein the resources in the real-time computer systems (RTS, RTSa) comprise at least a first and a second processor (PI, P2) and a communication subsystem (COM1, COMla) interconnecting at least said first and second processor (PI, P2) and at least a first memory (M1) accessible by said first processor and at least a second memory (M2) accessible by said second processor wherein the method comprises the steps: - providing an estimate for an individual resource utilization (101_SOTA, 101, 103, 104) of the tasks, - providing for each resource a resource model (MOD_SOTA, MOD); - determining a configuration allocating each of the tasks to at least one of the resources according to a prediction at least based on said estimate for an individual resource utilization (101_SOTA, 101, 103, 104) of the tasks and said resource model; characterized by the steps of - measuring the real resource utilization of the tasks during execution, and - refining of the prediction according to a result of the measuring and - refining the configuration according to the refined prediction.