VM Instance Optimization Service for Heterogeneous Cloud Workloads

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Service providers face challenges in optimizing the selection and configuration of virtual machine (VM) instance types to support diverse workloads effectively, leading to underutilization or overutilization of computing resources, making it difficult for users to choose the appropriate VM instance type without a time-consuming trial-and-error process.

Innovation Solution

An optimization service that uses workload categorization based on resource utilization characteristics, performance modeling, and simulation to recommend optimized VM instance types, and dynamically adjusts configurations to ensure efficient resource allocation and utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If users manually select and configure VM instance types through trial-and-error, then they can find suitable configurations, but the process consumes excessive time and resources

Engineering Contradiction:
ImproveVM instance type selection accuracyVSAvoidTime for trial-and-error process
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system performs preliminary actions by automatically analyzing workload characteristics and pre-determining optimal VM instance type configurations before users need to make selections. The optimization service proactively evaluates workload requirements against available instance types and presents recommended configurations, eliminating the need for users to perform time-consuming manual trial-and-error processes.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The optimization service acts as an intermediary between the user's workload requirements and the available VM instance types. It translates workload characteristics into optimal instance type recommendations, serving as a mediator that bridges the gap between user needs and system capabilities without requiring users to manually explore and evaluate multiple configurations.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If service providers offer multiple VM instance types with different resource allocations, then users can find more suitable configurations for their workloads, but the complexity of selection increases

Engineering Contradiction:
ImproveVM instance type varietyVSAvoidSelection process complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system manages the complexity of multiple VM instance types by dynamically changing and adjusting parameters based on workload characteristics. The optimization service evaluates various instance type parameters (CPU, memory, storage, networking) against workload requirements and automatically determines the optimal configuration, allowing service providers to offer diverse instance types without increasing user-facing complexity.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The optimization service enables self-service by automatically analyzing workload requirements and selecting appropriate VM instance types without requiring users to manually evaluate multiple options. The system serves itself by having the optimization service perform the selection task that would otherwise require complex user intervention, thereby maintaining adaptability while reducing selection complexity.

Inventive Principle:
Principle #25Self-service

3Productivity

If VM instances are allocated to maximize resource utilization, then computing resources are used more efficiently, but some instances may become overutilized while others remain underutilized

Engineering Contradiction:
ImproveResource utilization efficiencyVSAvoidPerformance consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system implements feedback mechanisms to continuously monitor VM instance performance and resource utilization. The optimization service collects data on instance performance metrics and workload characteristics, uses this feedback to evaluate current allocations, and automatically adjusts configurations to maintain both high utilization and consistent performance across all instances.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system applies dynamics by making VM instance configurations adaptable and changeable based on real-time conditions. Rather than static allocations, the optimization service dynamically adjusts instance types and resource allocations in response to changing workload requirements, allowing the system to maintain efficiency while ensuring performance consistency through continuous optimization.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11128696B2Compute platform optimization across heterogeneous hardware in a distributed computing environment
Publication Date: 2021.09.21 AMAZON TECH INC
  • US11128696B2 patent drawing
  • US11128696B2 patent drawing
  • US11128696B2 patent drawing

AI summary

Techniques for an optimization service of a service provider network to help optimize the selection, configuration, and utilization, of virtual machine (VM) instance types to support workloads on behalf of users. The optimization service may implement the techniques described herein at various stages in a life cycle of a workload to help optimize the performance of the workload, and reduce underutilization of computing resources. For example, the optimization service may perform techniques to help new users select an optimized VM instance type on which to initially launch their workload. Further, the optimization service may monitor a workload for the life of the workload, and determine new VM instance types, and/or configuration modifications, that optimize the performance of the workload. The optimization service may provide recommendations to users that help improve performance of their workloads, and that also increase the aggregate utilization of computing resources of the service provider network.