Lazy Memory Transformation in Virtual Machine Live Migration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional virtual machine live migration systems incur inefficiencies due to immediate reverse transformation and memory mapping of received memory pages, even if they are never accessed by the virtual machine, leading to unnecessary processing overhead.

Innovation Solution

Implementing lazy memory transformation, where the destination host stores transformed memory blocks without immediate reverse transformation, and only performs reverse operations when specific memory pages are accessed, using a mapping data structure to intercept page faults and perform transformations as needed.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If immediate reverse transformation and memory mapping are performed for all received memory pages, then memory accessibility is ensured, but processing overhead increases unnecessarily

Engineering Contradiction:
Improvememory accessibilityVSAvoidprocessing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies preliminary action by pre-establishing the mapping data structure that records the correspondence between virtual memory pages and physical memory pages during migration. This allows the system to prepare access paths in advance without performing immediate reverse transformation, enabling fast access when pages are actually needed while avoiding unnecessary processing of pages that may never be accessed.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent extracts the essential function of memory page tracking from the reverse transformation process. By separating the mapping record-keeping function from the transformation function, the system maintains memory accessibility through the mapping data structure while eliminating the need for immediate reverse transformation of all pages, thus reducing processing overhead.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If reverse transformation is performed for all memory blocks, then all memory pages become accessible, but computational load increases

Engineering Contradiction:
Improvememory accessibilityVSAvoidcomputational load
Core Design Contradiction:
ReliabilityVSPower

Solution Approach 1:

The patent applies partial action by performing reverse transformation only on the specific memory pages that are actually accessed by the virtual machine, rather than transforming all received memory pages. The mapping data structure enables the system to identify and transform only the necessary pages, reducing computational load while ensuring accessibility for accessed pages.

Inventive Principle:
Principle #16Partial or excessive action

3Speed

If memory pages are mapped immediately upon receipt, then access speed is improved, but unnecessary processing occurs for unaccessed pages

Engineering Contradiction:
Improveaccess speedVSAvoidprocessing efficiency
Core Design Contradiction:
SpeedVSProductivity

Solution Approach 1:

The patent applies preliminary action by pre-establishing the mapping data structure that records the correspondence between virtual memory pages and physical memory pages during migration. This allows the system to prepare access paths in advance without performing immediate reverse transformation, enabling fast access when pages are actually needed while avoiding unnecessary processing of pages that may never be accessed.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9563569B2Memory transformation in virtual machine live migration
Publication Date: 2017.02.07 RED HAT ISRAEL
  • US9563569B2 patent drawing
  • US9563569B2 patent drawing
  • US9563569B2 patent drawing

AI summary

Systems and methods for lazy memory transformation in virtual machine live migration. An example method may comprise: receiving, by a computer system, a plurality of transformed memory blocks, each transformed memory block comprising one or more memory pages mapped into an address space of a virtual machine being migrated to the computer system; storing, in a memory data structure, one or more mappings, each mapping comprising a guest virtual address of a memory page and an identifier of a transformed memory block containing the memory page; responsive to detecting an access to a memory page by the virtual machine, identifying, using the memory data structure, a transformed memory block containing the memory page being accessed; and storing in a memory mapped into the address space of the virtual machine the memory page produced by performing a reverse transformation of the transformed memory block.