Virtual Machine Configuration via Garbage Collection Runtime Analysis

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for determining a virtual machine configuration require multiple executions and rely on static information, leading to inefficient processes and the need for frequent reconfigurations, whereas the proposed solution utilizes garbage collection characteristics collected during runtime to determine a suitable configuration without the need for repeated restarts or reconfigurations.

Innovation Solution

A configuration system that determines a virtual machine configuration based on garbage collection characteristics, such as memory sizes before and after garbage collection cycles, to achieve target garbage collection characteristics like cumulative pause time, allowing for dynamic and efficient adjustments without restarting the virtual machine.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If multiple VM executions are performed to determine configuration, then configuration accuracy is improved, but time consumption and system overhead increase

Engineering Contradiction:
Improveconfiguration accuracyVSAvoidtime consumption
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system performs preliminary garbage collection cycles and collects characteristics data before final configuration determination, allowing the configuration to be based on actual runtime behavior rather than requiring multiple execution iterations

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses feedback from garbage collection characteristics collected during runtime to dynamically determine the optimal VM configuration, eliminating the need for multiple executions by using real-time performance data

Inventive Principle:
Principle #23Feedback

2Measurement precision

If multiple VM executions are performed to determine configuration, then configuration accuracy is improved, but system overhead increases

Engineering Contradiction:
Improveconfiguration accuracyVSAvoidsystem overhead
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The virtual machine performs self-diagnosis by collecting its own garbage collection characteristics during normal operation, eliminating the need for external testing tools or multiple execution cycles to gather configuration data

Inventive Principle:
Principle #25Self-service

3Ease of operation

If static information is used for configuration determination, then process simplicity is maintained, but configuration adaptability deteriorates

Engineering Contradiction:
Improveprocess simplicityVSAvoidconfiguration adaptability
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The system transitions from static configuration determination to dynamic configuration based on runtime garbage collection characteristics, allowing the VM configuration to adapt to actual workload conditions while maintaining a simple collection process

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11474832B2Intelligently determining a virtual machine configuration during runtime based on garbage collection characteristics
Publication Date: 2022.10.18 ORACLE INT CORP
  • US11474832B2 patent drawing
  • US11474832B2 patent drawing
  • US11474832B2 patent drawing

AI summary

Techniques for determining a virtual machine configuration based on garbage collection characteristics are disclosed. GC characteristics associated with GC cycles executed on a memory allocated for execution of an application are obtained. A relationship between GC variables is determined based on the GC characteristics collected over a time period of interest. A target GC characteristic is input to the GC variable relationship to determine an expected GC characteristic. The target GC characteristic may be, for example, a target cumulative pause time per a time interval. A virtual machine configuration is determined based on the expected GC characteristic. The virtual machine configuration is applied to a virtual machine executing the application.