Resource Monitoring Tool for Cloud Instance Performance Verification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Customers face challenges in selecting the appropriate virtual machine instances in cloud computing services due to inconsistencies in performance profiles caused by varying underlying hardware and location-specific factors, such as 'noisy neighbors', making it difficult to understand and manage resource performance effectively.

Innovation Solution

A resource monitoring tool initiates test virtual machines across different locations and configurations to monitor and compare performance metrics like processor, memory, and network performance, providing accurate data for users to make informed decisions and for the service to manage resources efficiently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If customers select virtual machine instances based on advertised specifications, then instance deployment is simplified, but actual performance varies due to underlying hardware differences and location factors

Engineering Contradiction:
Improveinstance selection simplicityVSAvoidperformance profile accuracy
Core Design Contradiction:
Ease of operationVSMeasurement precision

Solution Approach 1:

The system performs preliminary performance measurements by launching test virtual machines across different physical hosts and locations before customers make selection decisions. These advance measurements capture actual performance metrics including processor speed, memory performance, and I/O capabilities under real conditions, allowing customers to select instances based on verified performance data rather than just advertised specifications.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system continuously collects performance feedback from test virtual machines running across the infrastructure and uses this data to update performance profiles. This feedback mechanism tracks variations due to noisy neighbors, hardware aging, and location-specific factors, enabling dynamic adjustment of performance expectations and recommendations for optimal instance selection.

Inventive Principle:
Principle #23Feedback

2Loss of information

If performance monitoring is implemented across all instances, then performance visibility is improved, but system complexity and resource overhead increase

Engineering Contradiction:
Improveperformance visibilityVSAvoidmonitoring system complexity
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

Instead of monitoring every production instance directly, the system creates copies in the form of test virtual machines that mirror the characteristics of production instances. These test VMs are launched periodically or on-demand to capture performance data, providing visibility into actual performance without requiring continuous monitoring infrastructure on every production system.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The test virtual machines serve multiple functions: they act as performance sensors, baseline comparators, and capacity planners simultaneously. A single test VM infrastructure supports diverse monitoring needs including CPU performance, memory throughput, storage I/O, and network bandwidth measurements across different instance types and locations.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentEP3000040B1Determining and monitoring performance capabilities of a computer resource service
Publication Date: 2018.07.18 AMAZON TECH INC
  • EP3000040B1 patent drawingFigure 1
  • EP3000040B1 patent drawingFigure 2
  • EP3000040B1 patent drawingFigure 3A

AI summary

To determine and monitor the performance of a computer resource service in real time, a resource monitoring tool can initiate test virtual machines on the computer systems of the computer resource service. The resource monitoring tool can then monitor various metrics that indicated the performance of the test virtual machines over time, such as processor performance, memory performance, input/output (I/O) performance, and network performance. The resource monitoring tool can store the monitored metrics, provide select metrics to users, and use the metrics to manage the computer resource service. To accurately gauge the performance, the resource monitoring tool can select computer systems for testing that are representative of the computer resource service and the computer resources of the computer resource service.