Virtual Machine Configuration Prediction for Performance Tuning

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Workloads in public clouds face configuration uncertainties due to opaque and frequently changing infrastructure configurations, which hinders the application of optimized performance tunings and leads to inefficient operation.

Innovation Solution

A computer-implemented method that involves executing calibration programs on a virtual machine with an unknown configuration, collecting performance metrics, and using a trained machine learning model to predict the virtual machine's configuration, thereby selecting an appropriate version of an application for optimal performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If performance tuning is applied to applications on virtual machines, then application performance is improved, but configuration uncertainty in public clouds prevents effective tuning

Engineering Contradiction:
Improveapplication performanceVSAvoidconfiguration adaptability
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The system performs preliminary actions by executing calibration programs before deploying the application to characterize the virtual machine's configuration. This preliminary characterization enables subsequent performance tuning by providing the necessary configuration information, thus resolving the contradiction between wanting to apply performance tuning and the inability to do so due to configuration uncertainty.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback by using machine learning models to analyze performance metrics from calibration programs and infer configuration details. This feedback loop transforms unknown configuration states into known states, enabling performance tuning decisions. The feedback mechanism continuously improves configuration understanding, allowing effective performance optimization despite initial uncertainty.

Inventive Principle:
Principle #23Feedback

2Measurement precision

If calibration programs are executed to identify virtual machine configuration, then configuration accuracy is improved, but execution time is increased

Engineering Contradiction:
Improveconfiguration identification accuracyVSAvoidcalibration execution time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system applies partial action by selecting and executing only the most informative calibration programs from a larger set. Rather than running all possible calibration programs, the system chooses a subset that provides sufficient configuration information for effective performance tuning, thus reducing execution time while maintaining adequate measurement precision.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system substitutes mechanical calibration approaches with machine learning-based inference. Instead of relying solely on time-consuming calibration program executions to determine configuration, the system uses ML models to infer configuration from limited calibration data, significantly reducing the time required while maintaining configuration identification accuracy.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS20250045087A1Identifying virtual machine configurations for performance tuning applications
Publication Date: 2025.02.06 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US20250045087A1 patent drawing
  • US20250045087A1 patent drawing
  • US20250045087A1 patent drawing

AI summary

Computer-implemented methods for identifying a configuration of a virtual machine and performance selecting an application for execution on the virtual machine are provided. Aspects include executing a plurality of calibration programs on a virtual machine having an unknown configuration and collecting a plurality of performance metrics from the virtual machine during execution of the plurality of calibration programs. Aspects also include inputting the plurality of metrics into a trained machine learning model, receiving, from the trained machine learning model, a predicted configuration of the virtual machine, and executing a version of an application on the virtual machine, wherein the version is determined based at least in part on the predicted configuration.