Instruction Checkpointing for Data Processors Under Unpredictable Power

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Data processing devices powered by unpredictable energy sources, such as energy harvesters, face issues with unpredictable power loss leading to potential waste of processing effort and unpredictable behavior due to exhausted energy reserves.

Innovation Solution

Implementing progress indicators to track execution stages of program code and detect energy conditions, allowing for controlled operations such as continuing execution, ad hoc checkpointing, or terminating based on available energy reserves.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the processor continues executing program code without energy management, then processing productivity is maintained, but energy is wasted when power is lost and processing must be restarted

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidenergy waste
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The system performs preliminary detection of energy conditions and identifies safe checkpoint locations before power loss occurs. By detecting when energy reserves fall below thresholds and pre-identifying suitable checkpoint positions in the code, the system ensures that processing can be resumed efficiently without wasting energy on incomplete operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system continuously monitors energy conditions and provides feedback to control whether processing should continue or be interrupted at a checkpoint. This feedback mechanism allows the processor to adapt its behavior based on available energy, ensuring optimal use of remaining power reserves while maintaining productivity.

Inventive Principle:
Principle #23Feedback

2Device complexity

If the processor executes code without checkpointing, then device complexity is reduced, but reliability decreases due to unpredictable behavior on power loss

Engineering Contradiction:
Improvesystem simplicityVSAvoidprocessing reliability
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The system segments the program code into distinct portions with identified checkpoint locations. By dividing the code execution into manageable segments with defined start and end points, the system can reliably restart at specific checkpoints without requiring complex checkpointing infrastructure throughout the entire codebase.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The processor autonomously detects energy conditions and determines whether to continue execution or interrupt at a checkpoint without external intervention. This self-service capability maintains reliability while avoiding the complexity of external power management systems, as the processor independently manages its own execution state based on energy conditions.

Inventive Principle:
Principle #25Self-service

3Reliability

If the processor implements continuous energy monitoring and checkpoint detection, then reliability improves during power interruptions, but device complexity increases

Engineering Contradiction:
Improvepower interruption handlingVSAvoidcontrol circuitry complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system performs preliminary analysis to identify safe checkpoint locations in the code during compilation or code generation, rather than requiring complex real-time analysis during execution. This pre-identification of checkpoint positions reduces the complexity of control circuitry needed during runtime while maintaining reliability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses simple, lightweight progress indicators and energy condition detectors that consume minimal resources. Rather than implementing complex checkpointing mechanisms, the system uses straightforward comparisons of progress indicators against threshold values, providing reliable power interruption handling with minimal added complexity.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

Data Source

PatentUS20250341881A1Method and apparatus for instruction checkpointing in a data processing device powered by an unpredictable power source
Publication Date: 2025.11.06 ARM LTD
  • US20250341881A1 patent drawing
  • US20250341881A1 patent drawing
  • US20250341881A1 patent drawing

AI summary

A computer-implemented method includes generating computer executable code as one or more code portions, detecting a number of processing operations required to reach one or more predetermined stages in execution of each code portion, and associating with each code portion one or more progress indicators, each representing a respective execution stage of the one or more predetermined stages within execution of that code portion.