Automated Configuration Parameter Optimization for Application Overhead

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Configuring parameters for computer programs is complex and time-consuming, as users must specify multiple parameters, and existing methods do not effectively address processing overhead and optimization across multiple applications.

Innovation Solution

A method that estimates the cost and improvement of invoking applications to determine optimal configuration parameter frequencies, which balances overhead and performance, and groups applications to reduce testing overhead, optimizing parameters across multiple applications.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If users manually configure program parameters, then configuration flexibility is achieved, but configuration time and complexity increase significantly

Engineering Contradiction:
Improveconfiguration easeVSAvoidconfiguration time
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The system performs self-configuration by automatically determining optimal parameter values through performance modeling and analysis, eliminating the need for manual user configuration while maintaining flexibility through data-driven decision making

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system dynamically adjusts configuration parameters based on modeled performance characteristics and actual system conditions, transforming static manual configuration into dynamic automated optimization

Inventive Principle:
Principle #35Parameter changes

2Loss of time

If default values are set by program manufacturer, then configuration time is reduced, but performance optimization is compromised due to inability to account for specific deployment conditions

Engineering Contradiction:
Improveconfiguration timeVSAvoidperformance optimization
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The system performs preliminary performance modeling and analysis before configuration, establishing baseline characteristics and predicting optimal parameters based on deployment context, workload patterns, and system architecture

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system continuously monitors actual system performance and uses this feedback to refine and adjust configuration parameters, creating a closed-loop optimization that adapts to changing conditions

Inventive Principle:
Principle #23Feedback

3Reliability

If frequent application invocations are performed to test configuration parameters, then parameter optimization is improved, but processing overhead increases significantly

Engineering Contradiction:
Improveparameter optimizationVSAvoidprocessing overhead
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The system performs partial invocations and selective testing based on predicted improvement potential, invoking applications only when configuration changes are likely to yield beneficial results, avoiding unnecessary overhead

Inventive Principle:
Principle #16Partial or excessive action

4Reliability

If all applications are tested individually for configuration optimization, then comprehensive parameter tuning is achieved, but testing complexity and overhead increase

Engineering Contradiction:
Improveparameter tuning completenessVSAvoidtesting complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system merges similar applications into equivalence classes based on shared behavior patterns and performance characteristics, allowing configuration parameters to be determined once and applied across multiple applications, reducing testing complexity

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS8910189B2Methods and systems for automatically determining configuration parameters
Publication Date: 2014.12.09 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US8910189B2 patent drawing
  • US8910189B2 patent drawing
  • US8910189B2 patent drawing

AI summary

Techniques are disclosed for automatically determining one or more configuration parameters associated with one or more programs executable by a computing system. For example, in a system including at least one application and at least one parameter which affects a behavior of the at least one application, a method for determining a frequency for invoking the at least one application includes the following steps. The method estimates a cost which includes overhead resulting from invoking the at least one application. The method estimates an improvement in the behavior resulting from modifying the at least one parameter based on invoking the at least one application. The method selects the frequency based on the cost and the improvement.