State Dependent Optimization for Heterogeneous System Booting

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Booting a large heterogeneous computer system is time-consuming and not fully autonomous due to dependencies among components, often requiring system administrator intervention to manage errors or timeouts during the boot process.

Innovation Solution

A method that identifies boot dependencies among systems, uses historical measurements to determine the optimal boot timing for dependent systems to align with the availability of required services, allowing each dependent system to reach its necessary state only after the service system has reached its operational state, thereby reducing unproductive power usage and shortening the overall boot time.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If all systems are booted simultaneously in a heterogeneous system, then the boot process completes faster in theory, but dependent systems cannot reach their need state because service systems have not reached their provide state yet

Engineering Contradiction:
Improveboot timeVSAvoidboot success rate
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The system performs preliminary analysis of boot dependencies and historical measurements before initiating the boot process. It calculates expected state arrival times for each system and schedules boot initiation accordingly, ensuring service systems are started early enough to reach their provide states before dependent systems need them.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The boot scheduling system dynamically adjusts the initiation timing of each dependent system based on real-time monitoring of service system progress and historical performance data. The system continuously updates expected state arrival times and modifies boot schedules to optimize both speed and success rate.

Inventive Principle:
Principle #15Dynamics

2Reliability

If dependent systems are delayed until service systems are ready, then boot reliability improves, but overall boot time increases due to waiting periods

Engineering Contradiction:
Improveboot success rateVSAvoidboot time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system pre-calculates optimal boot initiation times using historical measurements of state transition durations. By analyzing past performance data before the actual boot process, it determines the precise moment to start each dependent system so that it reaches its need state exactly when the required service system reaches its provide state, eliminating both delays and failures.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system changes the timing parameter of boot initiation for each dependent system based on calculated state arrival time differentials. Instead of using fixed or simultaneous boot times, it dynamically adjusts initiation timestamps to account for different boot speeds and dependency relationships, optimizing the balance between reliability and speed.

Inventive Principle:
Principle #35Parameter changes

3Extent of automation

If systems are booted without considering dependencies, then the boot process is simpler and more autonomous, but errors and timeouts occur requiring administrator intervention

Engineering Contradiction:
Improveautonomous bootingVSAvoidboot success rate
Core Design Contradiction:
Extent of automationVSReliability

Solution Approach 1:

The system implements self-service boot management by automatically discovering dependencies, analyzing historical performance, calculating optimal schedules, and executing boot operations without administrator intervention. The autonomous boot controller monitors the entire process and dynamically adjusts timing based on real-time conditions, making the system both highly automated and reliable.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system incorporates feedback loops that monitor actual boot progress against predicted timelines. It uses historical measurements to establish baseline performance and continuously refines its predictions based on observed deviations, enabling autonomous correction of timing issues and ensuring reliable boot completion without human intervention.

Inventive Principle:
Principle #23Feedback

4Use of energy by moving object

If dependent systems remain powered off until needed, then power consumption is reduced, but the system must precisely predict when services will be available

Engineering Contradiction:
Improvepower consumptionVSAvoidstate arrival time prediction accuracy
Core Design Contradiction:
Use of energy by moving objectVSMeasurement precision

Solution Approach 1:

The system performs comprehensive preliminary measurements of state transition times during initial system characterization. It collects historical data on how long each system takes to transition between states under various conditions, establishing a baseline for accurate prediction. This pre-characterization enables precise timing predictions without requiring continuous monitoring during normal operation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system adjusts prediction parameters based on system state and operating conditions. It modifies expected transition times according to factors such as system load, temperature, and previous performance trends, maintaining high prediction accuracy while minimizing power consumption by keeping systems off until precisely when they are needed.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9367335B2State dependent optimization for sequential booting of heterogeneous systems
Publication Date: 2016.06.14 LENOVO GLOBAL TECHNOLOGIES SWITZERLAND INTERNATIONAL GMBH
  • US9367335B2 patent drawing
  • US9367335B2 patent drawing
  • US9367335B2 patent drawing

AI summary

A method and computer program product for implementing the method, where the method comprises obtaining boot dependencies among a plurality of systems, wherein a boot dependency identifies a dependent system, a service system that provides a service to the dependent system, a provide state of the service system, and a need state of the dependent system that requires the service system to have reached the provide state. The method further comprises obtaining historical measurements of the time periods between states for each of the systems. Then, during a process of booting the plurality of systems, the method initiates boot of each dependent system at a time that is determined, based on the historical measurements, to allow the dependent system to reach the need state no earlier than the time at which the service system is determined, based on the historical measurements, to reach the provide state.