Dynamic Executable Selection for Power Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current systems face impracticality in adapting to varying operating environments due to the need for manual configurations and the inability to consider all possible variations in actual execution environments, leading to inefficient performance and power consumption.

Innovation Solution

Dynamic program evaluation method that tests multiple executable variations to select the most suitable one based on runtime sensor data, automatically adapting to changes in hardware and software environments to optimize performance and power efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multiple versions of source codes are provided for the same task, then the system can adapt to different operating environments, but the complexity of system configuration increases and manual intervention is required

Engineering Contradiction:
Improveadaptability to operating environmentsVSAvoidsystem configuration complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system automatically selects and executes the most suitable executable version based on runtime sensor data and environmental conditions, eliminating the need for manual configuration. The multi-executable system self-adapts by monitoring its own operating environment and autonomously determining which executable to use, thus providing self-service functionality.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system changes operational parameters dynamically by selecting different executable versions based on detected environmental parameters (temperature, power source, performance metrics). Instead of fixed configuration, the system adapts by changing which executable is active based on real-time parameter monitoring.

Inventive Principle:
Principle #35Parameter changes

2Use of energy by stationary object

If manual configuration is used to specify which executable to use, then the system can control power consumption and performance, but the ease of operation deteriorates and the process becomes tedious

Engineering Contradiction:
Improvepower consumption controlVSAvoidease of system configuration
Core Design Contradiction:
Use of energy by stationary objectVSEase of operation

Solution Approach 1:

The system automatically monitors power consumption during test runs of different executables and selects the most power-efficient version without user intervention. Power management becomes a self-service function where the system autonomously optimizes its energy usage based on runtime measurements.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system implements feedback loops by measuring power consumption and performance metrics during executable test runs, then using this feedback to automatically select the optimal executable. The feedback mechanism enables autonomous decision-making about resource usage without manual configuration.

Inventive Principle:
Principle #23Feedback

3Measurement precision

If test runs are conducted for multiple executables to evaluate performance, then the accuracy of executable selection improves, but the loss of time increases due to multiple executions

Engineering Contradiction:
Improveexecutable evaluation accuracyVSAvoidtime for test runs
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system performs a limited number of test runs with a subset of executables rather than exhaustively testing all possible versions. By selecting and testing only the most relevant candidates based on initial conditions, the system achieves sufficient measurement precision without excessive time investment.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system performs preliminary filtering or selection of candidate executables before conducting full test runs. By pre-identifying the most promising candidates based on available information, the system reduces the scope of subsequent testing while maintaining selection accuracy.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP2981890B1Dynamic program evaluation for system adaptation
Publication Date: 2018.01.03 APPLE INC
  • EP2981890B1 patent drawingFigure 1
  • EP2981890B1 patent drawingFigure 2
  • EP2981890B1 patent drawingFigure 3

AI summary

A method and apparatus to maintain a plurality of executables for a task in a device are described. Each executable may be capable of performing the task in response to a change in an operating environment of the device. Each executable may be executed to perform a test run of the task. Each execution can consume an amount of power under the changed operating environment in the device. One of the executables may be selected to perform the task in the future based on the amounts of power consumed for the test runs of the task. The selected one executable may require no more power than each of remaining ones of the executables.