Event-Triggered Program Flow Control With Manager Feedback

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional event-triggered systems face challenges in predictability, testability, and observability, while time-triggered systems suffer from lower resource utilization and longer runtimes, making them unsuitable for real-time applications.

Innovation Solution

Implement a manager module that selectively triggers operational units using both node-originating and manager-originating triggers, allowing for conditional event initiation based on predetermined conditions, enhancing predictability and testability, and enabling real-time observation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If event-triggered scheduling is used to minimize delay between events, then resource utilization is improved, but predictability and testability deteriorate

Engineering Contradiction:
Improveresource utilizationVSAvoidpredictability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

A manager module is introduced as an intermediary between operational units in the event-triggered system. The manager receives event reports from operational units, determines system state, and sends trigger messages to initiate events. This intermediary provides a centralized coordination point that improves predictability and testability while maintaining the event-triggered architecture's resource utilization benefits.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system implements a feedback mechanism where operational units send event reports to the manager, and the manager responds with trigger messages. This closed-loop feedback enables monitoring and control of event execution, allowing for verification of timeliness and correctness, thereby improving predictability and testability without sacrificing the dynamic responsiveness of event-triggered scheduling.

Inventive Principle:
Principle #23Feedback

2Reliability

If a centralized scheduler is used to monitor operational units, then predictability and observability are improved, but runtime and resource utilization deteriorate

Engineering Contradiction:
ImprovepredictabilityVSAvoidruntime
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Operational units autonomously determine when to trigger events based on local conditions and send event reports to the manager. This self-service approach eliminates the need for the centralized scheduler to continuously monitor and control every operational unit, reducing communication overhead and runtime while maintaining predictability through the manager's coordination of critical events.

Inventive Principle:
Principle #25Self-service

3Reliability

If time-triggered scheduling is used to ensure predictable execution, then observability is improved, but resource utilization and real-time performance deteriorate

Engineering Contradiction:
ImprovepredictabilityVSAvoidresource utilization
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system combines the static predictability of time-triggered scheduling with the dynamic responsiveness of event-triggered scheduling. The manager module dynamically determines whether to send trigger messages based on event reports and system state, allowing the system to adapt to changing conditions while maintaining predictable execution through centralized coordination.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS12619464B2Program flow monitoring and control of an event-triggered system
Publication Date: 2026.05.05 NVIDIA CORP
  • US12619464B2 patent drawing
  • US12619464B2 patent drawing
  • US12619464B2 patent drawing

AI summary

In various examples, a program (e.g., application, algorithm, routine, etc.) may be organized into operational units (e.g., nodes executed by one or more processors), each of which are tasked with executing one or more respective events (e.g., tasks) within the larger program. At least some of the events of the larger program may be successively executed in a flow, one after another, using triggers sent directly from one node to the next. In addition, a manager may exchange communications with the nodes to monitor or assess a status of the system (e.g., determine when a node has completed an event) or to control or trigger a node to initiate an event.