VM Resource Oversubscription via Utilization Pattern Analysis

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Cloud computing systems face performance degradation and system failures due to oversubscription, where virtual machines are allocated to servers with insufficient physical resources, leading to undesirable effects like service delays and interruptions.

Innovation Solution

Categorizing virtual machines as user-facing or non-user-facing based on historical resource utilization data and applying pattern analysis, such as Fast Fourier Transform, to allocate user-facing tasks to undersubscribed servers and non-user-facing tasks to any server, thereby mitigating the impact of oversubscription.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If oversubscription is used to host more virtual machines on a server, then resource utilization is boosted, but performance degradation and system failures occur when all virtual machines demand resources simultaneously

Engineering Contradiction:
Improveresource utilizationVSAvoidsystem stability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent segments virtual machines into two distinct categories: user-facing virtual machines and non-user-facing virtual machines. This segmentation allows different resource allocation strategies to be applied to each category, enabling oversubscription of non-user-facing VMs while protecting user-facing VMs from resource contention, thus resolving the contradiction between high resource utilization and system stability

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by implementing different oversubscription levels for different types of virtual machines. User-facing VMs are allocated dedicated resources with guaranteed performance, while non-user-facing VMs are allowed to oversubscribe and compete for remaining resources. This localized approach to resource allocation maintains system stability for critical operations while maximizing overall resource utilization

Inventive Principle:
Principle #3Local quality

2Productivity

If virtual machines are allocated to servers with insufficient physical resources, then more virtual machines can be hosted, but service delays and interruptions occur

Engineering Contradiction:
Improvenumber of virtual machines hostedVSAvoidservice delay
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

By segmenting virtual machines into user-facing and non-user-facing categories, the patent ensures that user-facing VMs (which require timely service response) are not subjected to the same resource contention as non-user-facing VMs. This segmentation prevents service delays for critical operations while still allowing the system to host more virtual machines overall through oversubscription of non-critical VMs

Inventive Principle:
Principle #1Segmentation

3Reliability

If pattern analysis is applied to categorize virtual machines, then user-facing tasks can be allocated to undersubscribed servers, but system complexity increases

Engineering Contradiction:
Improveservice continuityVSAvoidallocation system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements self-service by enabling virtual machines to automatically declare their type (user-facing or non-user-facing) based on their workload characteristics and resource usage patterns. The system automatically categorizes and allocates VMs without requiring manual intervention or complex external management, thus improving service continuity while minimizing the increase in system complexity

Inventive Principle:
Principle #25Self-service

Applied Scientific Principles

This section explains which scientific principles are used to turn an abstract innovation direction into a practical engineering solution.

Function Achieved in This Case

This approach reduces the risk of service delays and interruptions by ensuring user-facing tasks are allocated to servers with sufficient resources, maintaining performance and preventing system failures.

Implementation Method 1

Pattern analysis can then be performed on the collected utilization data to determine a temporal pattern present in the utilization data. In certain implementations, the temporal pattern can be classified as periodic, constant, or random patterns. A periodic pattern indicates a possibility that the corresponding task is user-facing

Methodology Applied
Scientific EffectFast Fourier Transform:

Data Source

PatentUS11714686B2Resource oversubscription based on utilization patterns in computing systems
Publication Date: 2023.08.01 MICROSOFT TECHNOLOGY LICENSING LLC
  • US11714686B2 patent drawing
  • US11714686B2 patent drawing
  • US11714686B2 patent drawing

AI summary

Techniques of managing oversubscription of network resources are disclosed herein. In one embodiment, a method includes receiving resource utilization data of a virtual machine hosted on a server in a computing system. The virtual machine is configured to perform a task. The method also includes determining whether a temporal pattern of the resource utilization data associated with the virtual machine indicates one or more cycles of resource utilization as a function of time and in response to determining that the temporal pattern associated with the virtual machine indicates one or more cycles of resource utilization as a function of time, causing the virtual machine to migrate to another server that is not oversubscribed by virtual machines in the computing system.