Automated JVM Memory Sizing for Cloud Virtual Machines

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional methods for determining optimal virtual machine sizing in enterprise computing environments are costly, time-consuming, and often result in suboptimal resource utilization, leading to memory overallocation, underallocation, and system instability due to the lack of sufficient knowledge and statistical data for accurate JVM configuration.

Innovation Solution

A method that ascertains information about computing resources, including available memory and performance metrics, and applies memory allocation rules based on best practices to automatically generate and adjust JVM memory allocations, utilizing a software utility to automate complex tasks and ensure consistent, optimal configurations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If manual virtual machine sizing methods are used, then flexibility in configuration is improved, but time consumption and cost increase significantly

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

Solution Approach 1:

The system performs self-service by automatically determining optimal virtual machine sizes using statistical data and performance metrics without requiring manual intervention. The automated sizing engine analyzes computing environment characteristics and applies memory allocation rules to generate recommendations, eliminating the need for expert administrators to manually size each virtual machine while maintaining optimal configuration.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system changes parameters by dynamically adjusting virtual machine memory allocation based on statistical data, performance metrics, and workload characteristics. Instead of using fixed manual configurations, the system continuously optimizes memory parameters (heap size, stack size, code cache) based on actual system conditions and learned patterns from historical data.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If default memory sizes are used for virtual machines, then provisioning speed is improved, but resource utilization efficiency deteriorates

Engineering Contradiction:
Improveprovisioning speedVSAvoidresource utilization efficiency
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The system performs preliminary action by pre-calculating and storing optimal memory allocation parameters in a database before virtual machines are deployed. Statistical data and performance metrics are collected and analyzed in advance to establish memory allocation rules, so that when virtual machines need to be provisioned, the optimal configuration is already determined and can be rapidly applied without real-time calculation delays.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If manual resizing of virtual machines is performed, then adaptability to changing requirements is improved, but system stability and performance consistency worsen

Engineering Contradiction:
Improveresizing adaptabilityVSAvoidsystem stability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system implements feedback by continuously monitoring virtual machine performance metrics and comparing actual performance against target performance levels. When performance deviations are detected, the system automatically adjusts memory allocation and provides feedback to administrators about the changes made. This closed-loop control ensures that resizing operations maintain system stability while adapting to changing requirements.

Inventive Principle:
Principle #23Feedback

4Ease of manufacture

If enterprise administrators lack sufficient knowledge and statistical data, then implementation simplicity is improved, but sizing accuracy deteriorates

Engineering Contradiction:
Improveimplementation simplicityVSAvoidsizing accuracy
Core Design Contradiction:
Ease of manufactureVSMeasurement precision

Solution Approach 1:

The system introduces an intermediary component - the automated sizing engine with statistical data repository - that bridges the gap between simple implementation and accurate sizing. This intermediary collects, analyzes, and stores performance metrics and workload characteristics, then uses this data to generate accurate sizing recommendations. Administrators interact only with the simple interface while the intermediary handles the complex analysis and calculation tasks.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9946573B2Optimizing virtual machine memory sizing for cloud-scale application deployments
Publication Date: 2018.04.17 ORACLE INT CORP
  • US9946573B2 patent drawing
  • US9946573B2 patent drawing
  • US9946573B2 patent drawing

AI summary

A system and method for facilitating allocation of computing resources, such as addressable memory, to virtual machines in a networked computing environment. An example method includes ascertaining a first set of information characterizing one or more computing resources of the computing environment, wherein the first set of information includes information indicating allocable memory in the computing environment; determining a set of memory allocation rules applicable to the one or more virtual machines and the computing environment; and employing the first set of information and the set of memory allocation rules to automatically generate and optionally implement one or more indications or recommendations for adjusting existing memory allocations in accordance with the memory allocation rules.