Shadow Tracking for Pre-Error Analysis in Real-Time Simulations

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Real-time interactive applications are difficult to troubleshoot due to a lack of tools that provide detailed information about the state before they fail, leading to challenges in identifying the causes of anomalies or failures.

Innovation Solution

A method is implemented to create a time-delayed version of a primary instance of a real-time interactive application, allowing for the preservation of pre-error states by buffering inputs and executing a secondary instance with a configurable delay, enabling inspection and diagnostic functions before an undesired state occurs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If a primary instance of a real-time interactive application executes in real time, then processing speed and responsiveness are improved, but the ability to detect and analyze error states deteriorates

Engineering Contradiction:
Improveprocessing speedVSAvoiderror detection capability
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The system creates a secondary instance that executes with a time delay behind the primary instance. This secondary instance serves as a preliminary backup that can be paused and inspected before the primary instance encounters an error state, allowing developers to examine the application state at a point before failure occurs.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates a copy of the primary application instance (the secondary instance) that processes the same input stream but with a time delay. This copy allows for diagnostic inspection without affecting the real-time performance of the primary instance, enabling error state analysis through the delayed counterpart.

Inventive Principle:
Principle #26Copying

2Loss of information

If developers use crash dumps and logs to troubleshoot failures, then some error information is obtained, but detailed information about the state before failure is lost

Engineering Contradiction:
Improveinformation retentionVSAvoidtroubleshooting difficulty
Core Design Contradiction:
Loss of informationVSEase of operation

Solution Approach 1:

The secondary instance is prepared in advance with a time delay, allowing it to reach the same state as the primary instance did before failure. Developers can pause the secondary instance at this pre-error state and perform detailed inspection, effectively capturing information before it would be lost in a crash dump.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system provides feedback about the application state by maintaining a delayed copy that mirrors the primary instance's execution. This feedback mechanism allows developers to observe and analyze the state progression leading up to an error, providing actionable insights that simple crash dumps cannot offer.

Inventive Principle:
Principle #23Feedback

3Difficulty of detecting and measuring

If a secondary instance runs with a time delay to preserve pre-error states, then diagnostic capability is improved, but system complexity increases

Engineering Contradiction:
Improvediagnostic capabilityVSAvoidsystem complexity
Core Design Contradiction:
Difficulty of detecting and measuringVSDevice complexity

Solution Approach 1:

Instead of implementing complex diagnostic tools within the primary instance, the system creates a simpler secondary copy that runs with a time delay. This approach trades minimal additional computational resources for significant improvements in diagnostic capability, as the secondary instance essentially mirrors the primary's behavior with a configurable delay.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The secondary instance serves multiple functions: it acts as a backup, a diagnostic tool, and a means to preserve pre-error states. This multi-functionality reduces the need for separate specialized tools, thereby managing system complexity while providing comprehensive diagnostic capabilities.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentEP3807766B1Shadow tracking of real-time interactive simulations for complex system analysis
Publication Date: 2021.10.27 GOOGLE LLC
  • EP3807766B1 patent drawingFigure 1
  • EP3807766B1 patent drawingFigure 2
  • EP3807766B1 patent drawingFigure 3

AI summary

An electronic computing system preserves a pre-error state of a processing unit by receiving a first stream of inputs; buffering the first stream of inputs to generate a buffered stream of inputs identical to the first stream of inputs; conveying the first stream to a primary instance of a first program; conveying the buffered stream to a secondary instance of the first program; executing the primary instance on the first stream in real time; executing the secondary instance on the buffered stream with a predefined time delay with respect to execution of the primary instance on the first stream; detecting an error state resulting from execution of the primary instance; and in response to detecting the error state, pausing the secondary instance and preserving a current state of the secondary instance, wherein the current state of the secondary instance corresponds to a pre-error state of the primary instance.