Virtual Machine Checkpointing with Adaptive Interval Queuing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The challenge lies in finding a balance between minimizing network latency and CPU overhead in virtual machines through checkpointing, as frequent checkpoints reduce CPU cycles but increase network output latency, while infrequent checkpoints increase network latency without optimizing workload-specific opportunities.

Innovation Solution

Checkpoints are taken at varying time intervals based on the characteristics of the workload, with the process involving queuing network data packets, generating and transmitting checkpoint information packets, and releasing them only upon acknowledgment, allowing for adaptive timing dependent on workload characteristics.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If checkpoints are taken frequently, then network output latency is minimized, but CPU overhead increases

Engineering Contradiction:
Improvenetwork output latencyVSAvoidCPU utilization
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The patent implements dynamic checkpoint frequency adjustment based on workload characteristics. The system monitors CPU utilization, network traffic patterns, and checkpoint duration to adaptively modify checkpoint intervals. When CPU utilization is high or workload is light, checkpoint frequency is reduced. When network latency requirements are stringent or workload can tolerate checkpoint overhead, frequency is increased. This dynamic approach resolves the contradiction by making checkpoint frequency flexible rather than fixed.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes key parameters including checkpoint interval duration, checkpoint size thresholds, and network packet queuing depth based on observed workload characteristics. By adjusting these parameters dynamically, the system optimizes the balance between network latency and CPU overhead. For example, during periods of high network activity, the system may reduce checkpoint frequency or increase inter-checkpoint intervals to minimize CPU disruption while still meeting latency requirements.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If checkpoints are taken infrequently, then CPU overhead is reduced, but network output latency increases

Engineering Contradiction:
ImproveCPU utilizationVSAvoidnetwork output latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system dynamically adjusts checkpoint frequency based on real-time monitoring of network latency requirements and CPU workload. When network latency sensitivity is high, the system increases checkpoint frequency even if it consumes more CPU cycles. When CPU workload is high and network latency tolerance is greater, the system reduces checkpoint frequency. This dynamic adaptation resolves the contradiction by responding to changing conditions rather than using a fixed checkpoint schedule.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system implements feedback mechanisms that monitor network output latency and CPU utilization metrics, then use this information to adjust checkpoint frequency. The feedback loop continuously evaluates whether current checkpoint frequency is appropriate for the observed workload characteristics and network conditions, making adjustments to optimize the balance between latency and CPU overhead.

Inventive Principle:
Principle #23Feedback

3Ease of manufacture

If a fixed frequency timer is used for checkpoints, then implementation is simple, but workload-specific optimization opportunities are ignored

Engineering Contradiction:
Improveimplementation simplicityVSAvoidworkload-specific optimization
Core Design Contradiction:
Ease of manufactureVSAdaptability or versatility

Solution Approach 1:

The system transitions from static fixed-frequency checkpointing to dynamic adaptive checkpointing that responds to workload characteristics. The implementation monitors CPU utilization patterns, network traffic intensity, and checkpoint performance metrics to automatically adjust checkpoint frequency. This maintains reasonable implementation complexity while dramatically improving adaptability to different workload types and conditions.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The checkpoint system performs self-adjustment based on its own performance monitoring and workload observation. It automatically modifies checkpoint frequency without requiring external configuration or manual intervention, adapting to changing workload characteristics autonomously. This self-service capability provides workload-specific optimization while keeping the implementation relatively simple through automated decision-making algorithms.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10185581B2Method and system for taking checkpoints at varying intervals
Publication Date: 2019.01.22 VMWARE INC
  • US10185581B2 patent drawing
  • US10185581B2 patent drawing
  • US10185581B2 patent drawing

AI summary

The method of taking checkpoints of a virtual computing instance running in a first host computer at varying time intervals includes queuing outgoing network data packets of the virtual computing instance during execution of the virtual computing instance, triggering a process to take the checkpoint, the process including generating a checkpoint information packet and transmitting the checkpoint information packet to a second host computer, and upon receiving acknowledgement from the second host computer of receipt of the checkpoint information packet, releasing the outgoing network data packets of the virtual computing instance that have been queued and not released. The triggering time for the process to take the checkpoint is dependent on characteristics of workload executed by the virtual computing instance.