Dynamic Resource Allocation in Virtualized Environments

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In container-based virtualization, resource allocation is static and does not account for varying workload demands, leading to inefficiencies as resources are provisioned based on peak requirements with generous headroom, while actual usage can be significantly lower, and background workloads are not differentiated from paying workloads.

Innovation Solution

A method that dynamically adjusts resource allocation for virtualized computing entities by forecasting future resource needs using performance data, allowing for reallocation of resources while the VM operates, with the hypervisor and operating system collaborating to prioritize paying workloads.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If resources are provisioned based on peak requirements with generous headroom, then reliability is improved, but resource utilization efficiency deteriorates

Engineering Contradiction:
Improveservice level requirementsVSAvoidresource utilization efficiency
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent implements dynamic resource allocation that adjusts resource provisioning based on actual workload conditions. The system transitions from static peak-based provisioning to dynamic adjustment, where resources are allocated according to real-time performance data and predicted future needs, thereby improving utilization efficiency while maintaining reliability

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system collects performance data from virtualized computing entities and uses this feedback to adjust resource allocation. By continuously monitoring actual resource usage and workload patterns, the system optimizes resource distribution to match actual demand rather than relying on conservative peak estimates

Inventive Principle:
Principle #23Feedback

2Device complexity

If static resource allocation is used, then device complexity is reduced, but adaptability deteriorates

Engineering Contradiction:
Improveresource allocation mechanismVSAvoidworkload demand adaptation
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent introduces dynamic resource allocation mechanisms that automatically adjust to varying workload demands. The system monitors performance data and modifies resource allocation in real-time, enabling the platform to adapt to different workload patterns without manual intervention while maintaining manageable system complexity through automated processes

Inventive Principle:
Principle #15Dynamics

3Ease of operation

If resources are allocated without differentiation, then ease of operation is improved, but productivity deteriorates

Engineering Contradiction:
Improveresource allocation managementVSAvoidworkload processing efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent applies differentiated resource allocation based on workload type, distinguishing between background workloads and paying workloads. The system allocates resources with different priorities and constraints for different workload categories, ensuring that critical paying workloads receive necessary resources while background tasks use remaining capacity, thereby improving overall productivity

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS10203991B2Dynamic resource allocation with forecasting in virtualized environments
Publication Date: 2019.02.12 KYNDRYL INC
  • US10203991B2 patent drawing
  • US10203991B2 patent drawing
  • US10203991B2 patent drawing

AI summary

In a virtualized data processing system where an operating system assigns resources to a virtualized computing entity (VCE) according to a container configuration of the VCE, and by using performance data corresponding to a type of the VCE, an initial resource allocation for a new VCE is computed at an initialization of the new VCE. The performance data includes at least a processor utilization information corresponding to the type of VCE for a past period. An operation of the new VCE is initiated using the initial resource allocation. New performance data is collected from the operation of the new VCE. For a future period of operation of the new VCE, a resource requirement is forecasted. An instruction to a provisioning system is constructed, specifying a portion of the resource requirement and the future period, which causes the provisioning system to adjust the initial resource allocation.