Duplicate Thread Scheduling Without Lockstep Idle Time

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional lockstepping of critical threads in processing systems introduces latency due to the need to artificially hold execution units idle, reducing overall processing throughput when there are no idle units available.

Innovation Solution

A safety thread scheduler that buffers requests for critical threads and schedules duplicate check threads on available execution units within a safety time-window, allowing interruption of non-critical threads if necessary, thus avoiding idle time penalties.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If lockstepping execution of critical threads is implemented to ensure safety checks, then reliability is improved, but productivity deteriorates due to idle time penalties

Engineering Contradiction:
Improvesafety check reliabilityVSAvoidprocessing throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies dynamics by making the scheduling approach flexible rather than fixed. The system dynamically selects between lockstep scheduling and asynchronous scheduling with interrupts based on real-time execution unit availability. This dynamic adaptation resolves the contradiction by allowing the system to maintain reliability through safety checks while avoiding productivity loss by choosing the more efficient scheduling mode when possible.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the scheduling parameter from strict lockstep (synchronized timing) to asynchronous with interrupt (decoupled timing with forced execution). By modifying the timing parameter and introducing interrupt mechanisms, the system achieves safety checks without requiring both execution units to be idle simultaneously, thereby resolving the contradiction between reliability and productivity.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If execution units are held idle to enable lockstepping of critical threads, then reliability is improved, but loss of time increases

Engineering Contradiction:
Improvethread execution safetyVSAvoididle time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by proactively interrupting non-critical threads when a critical thread needs execution and an execution unit is unavailable. Instead of passively holding execution units idle until they become free, the system actively secures an execution unit by preempting other work, thereby eliminating idle time while maintaining the ability to perform safety checks.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent applies skipping by rushing through the safety check process using interrupt mechanisms. When a critical thread requires execution, the system can interrupt and skip over non-critical threads to immediately allocate an execution unit, thereby eliminating the time loss that would otherwise occur while waiting for an execution unit to become naturally available.

Inventive Principle:
Principle #21Skipping (Rushing through)

3Measurement precision

If strict lockstepping is enforced for critical thread scheduling, then measurement precision of safety checks is improved, but device complexity increases

Engineering Contradiction:
Improvesafety check timing precisionVSAvoidscheduling mechanism complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary mechanism (the interrupt system and scheduler) that mediates between the requirement for precise safety checks and the available execution units. Rather than requiring direct lockstepping coordination between execution units, the intermediary scheduler manages timing and allocation, simplifying the overall system while maintaining measurement precision through controlled interrupt-based scheduling.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS12566612B2Scheduling of duplicate threads
Publication Date: 2026.03.03 IMAGINATION TECH LTD
  • US12566612B2 patent drawing
  • US12566612B2 patent drawing
  • US12566612B2 patent drawing

AI summary

A safety thread scheduler configured to schedule a check thread for a critical thread being run on one of a plurality of execution units, the check thread being a duplicate of the critical thread, wherein the safety thread scheduler is configured to schedule the check thread to begin being run on a second one of the plurality of execution units before the end of a safety time-window for scheduling the check thread. The safety thread scheduler is further configured to allow the check thread, when the check thread is running on the second one of the plurality of execution units, to be interrupted by a further thread and to re-schedule the check thread to be resumed by expiry of a re-scheduling time limit.