Pre-initialized Virtual Machine Instance Pool for Low Latency Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Developers face challenges in efficiently utilizing virtual machine instances in cloud computing due to latency issues, over- or under-provisioning of resources, and the need to predict traffic changes, leading to performance problems and increased costs.

Innovation Solution

A virtual compute system maintains a pool of pre-initialized virtual machine instances with loaded software components, allowing for rapid deployment and resource adjustment based on user requests, reducing latency and optimizing resource allocation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If virtual machine instances are initialized on-demand when user requests are received, then resource allocation efficiency is improved, but execution latency increases due to software loading time

Engineering Contradiction:
Improveresource allocation efficiencyVSAvoidexecution latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system pre-initializes virtual machine instances and loads required software components (operating systems, language runtimes, libraries) before user requests arrive. This preliminary action eliminates the software loading delay that would otherwise occur when instances are created on-demand, thereby reducing execution latency while maintaining efficient resource allocation through controlled pre-provisioning

Inventive Principle:
Principle #10Preliminary action

2Speed

If more virtual machine instances are provisioned to reduce latency, then execution speed is improved, but resource costs increase due to over-provisioning

Engineering Contradiction:
Improveexecution speedVSAvoidresource consumption
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The system dynamically adjusts the number and configuration of pre-initialized virtual machine instances based on real-time monitoring of user request patterns, traffic predictions, and current system load. This dynamic provisioning ensures sufficient instances are available to maintain low latency while avoiding excessive resource consumption by scaling the pre-provisioned pool up or down as conditions change

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system implements feedback mechanisms that monitor execution latency, instance utilization rates, and resource consumption metrics. This feedback information is used to continuously optimize the pre-initialization strategy, adjusting which instances are pre-created and when, thereby balancing execution speed improvements against resource cost control

Inventive Principle:
Principle #23Feedback

3Adaptability or versatility

If virtual machine instances are configured with specific software components, then functionality is improved, but initialization time increases due to software loading

Engineering Contradiction:
ImprovefunctionalityVSAvoidinitialization time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system pre-loads and configures virtual machine instances with required software components (operating systems, language runtimes, libraries) before they are needed. This preliminary software initialization eliminates the configuration and loading time that would otherwise be incurred at request time, allowing instances to be deployed immediately with full functionality while avoiding initialization delays

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system changes the initialization parameter from 'on-demand configuration' to 'pre-configured state' for virtual machine instances. By transitioning instances to a pre-configured state with software components already loaded and ready, the system maintains full functional adaptability while dramatically reducing the effective initialization time experienced by users

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9727725B2Security protocols for low latency execution of program code
Publication Date: 2017.08.08 AMAZON TECH INC
  • US9727725B2 patent drawing
  • US9727725B2 patent drawing
  • US9727725B2 patent drawing

AI summary

A system for providing security mechanisms for secure execution of program code is described. The system may be configured to maintain a plurality of virtual machine instances. The system may be further configured to receive a request to execute a program code and allocate computing resources for executing the program code on one of the virtual machine instances. One mechanism involves executing program code according to a user-specified security policy. Another mechanism involves executing program code that may be configured to communicate or interface with an auxiliary service. Another mechanism involves splitting and executing program code in a plurality of portions, where some portions of the program code are executed in association with a first level of trust and some portions of the program code are executed with different levels of trust.