Speculative Event Processing Reduces Wait Times

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing event-driven software applications face inefficiencies due to lengthy processing cycles when handling multiple event responses, leading to undesirable wait times and the need for complex data model refactoring to support speculative execution.

Innovation Solution

A computer-implemented method that predicts and speculatively processes event responses by identifying potential next responses, determining their abstraction level, and selecting appropriate speculative processing techniques, such as cloning processes or transactions, to reduce wait times without requiring refactoring of existing applications.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If speculative execution is implemented to reduce wait times, then processing speed is improved, but code complexity and development difficulty increase due to requiring pre-defined data models

Engineering Contradiction:
Improveprocessing speedVSAvoidcode complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent creates a speculative copy of the event processing logic that executes in parallel with the original processing. This copy follows the same event response handling path but operates independently, allowing the system to prepare potential future states without blocking current operations. The copy mechanism enables speculative execution without requiring complete rewriting of the application code structure.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The system performs preliminary speculative processing of event responses before they are actually needed. By identifying potential event responses in advance and executing their handling logic speculatively, the system prepares for future events while the application continues normal operation. This preliminary action reduces wait times by having processing ready beforehand.

Inventive Principle:
Principle #10Preliminary action

2Ease of manufacture

If traditional event processing is used to maintain simple application architecture, then ease of implementation is preserved, but processing time increases due to sequential execution of multiple event responses

Engineering Contradiction:
Improveease of implementationVSAvoidprocessing time
Core Design Contradiction:
Ease of manufactureVSLoss of time

Solution Approach 1:

The patent enables continuous processing by overlapping speculative event response handling with normal application execution. Instead of waiting for each event response to complete before handling the next, the system maintains continuous useful action by executing speculative processing in parallel threads, ensuring that processing work is always being performed without idle wait time.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The event processing workflow is segmented into independent speculative processing units that can execute concurrently. Each potential event response is divided into its own processing segment that can be handled independently in parallel with other segments, transforming a sequential process into a parallel one without fundamentally changing the application's core architecture.

Inventive Principle:
Principle #1Segmentation

3Productivity

If existing applications are modified to support speculative execution, then processing efficiency is improved, but application maintenance complexity increases due to refactoring requirements

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidapplication maintenance complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary speculative processing layer that sits between the event source and the application's normal processing logic. This intermediary captures event responses and routes them to speculative processing threads without requiring changes to the application's core code. The intermediary acts as a mediator that enables speculative execution while preserving the original application architecture, thus avoiding refactoring and reducing maintenance complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentEP2823392B1Application level speculative processing
Publication Date: 2021.05.05 AUTODESK INC
  • EP2823392B1 patent drawingFigure 1
  • EP2823392B1 patent drawingFigure 2
  • EP2823392B1 patent drawingFigure 3

AI summary

One or more embodiments of the invention is a computer-implemented method for speculatively executing application event responses. The method includes the steps of identifying one or more event responses that could be issued for execution by an application being executed by a master process, for each event response, generating a child process to execute the event response, determining that a first event response included in the one or more event responses has been issued for execution by the application, committing the child process associated with the first event response as a new master process, and aborting the master process and all child processes other than the child process associated with the first event response.