Virtual Machine Memory Page Metadata Representation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing virtual machine management systems are inefficient due to the need to store and restore entire memory images, which leads to underutilization of hardware resources and diminished system performance, especially when dealing with multiple virtual machines on shared hardware.

Innovation Solution

The method involves representing and saving non-zero memory pages using metadata that describes known patterns, allowing for efficient saving and restoration by storing only metadata instead of complete page data, and using canonical instances for complex patterns to reduce redundant storage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If entire memory images are stored to persistent storage for save operations, then virtual machine state is preserved, but system performance deteriorates due to slow storage media

Engineering Contradiction:
Improvevirtual machine state preservationVSAvoidsave operation speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts only the essential information needed to represent memory page patterns (metadata) rather than storing complete page contents. This selective extraction of critical data elements enables fast save operations while maintaining the ability to reconstruct full memory state during restore operations.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Instead of storing complete memory images and then processing them, the patent inverts the approach by first analyzing memory pages to identify patterns, then storing only the pattern metadata. This inversion transforms a storage-intensive process into a computation-intensive process during save, enabling performance improvement.

Inventive Principle:
Principle #13The other way round (Inversion)

2Manufacturing precision

If complete page contents are stored for each memory page, then full fidelity is maintained, but storage requirements increase significantly

Engineering Contradiction:
Improvememory state fidelityVSAvoidstorage space
Core Design Contradiction:
Manufacturing precisionVSQuantity of substance

Solution Approach 1:

The patent changes the representation parameters of memory pages from storing raw byte values to storing pattern metadata (such as pattern type identifiers and key characteristics). This parameter transformation dramatically reduces storage requirements while preserving the essential information needed to reconstruct or identify memory page contents during restore operations.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

Instead of copying actual page contents, the patent creates simplified metadata copies that represent the essential patterns of memory pages. These metadata copies serve as proxies that enable reconstruction of full page contents when needed, significantly reducing storage space while maintaining fidelity.

Inventive Principle:
Principle #26Copying

3Quantity of substance

If metadata representation is used for patterned pages, then storage efficiency improves, but processing complexity increases during save and restore

Engineering Contradiction:
Improvestorage spaceVSAvoidsave and restore process complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent performs preliminary pattern analysis and metadata generation during the save operation, organizing memory pages by their patterns before storage. This preliminary action during save simplifies the restore operation, as the metadata structure is already prepared and can be efficiently processed to reconstruct memory state without complex runtime analysis.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9135171B2Method for improving save and restore performance in virtual machine systems
Publication Date: 2015.09.15 VMWARE INC
  • US9135171B2 patent drawing
  • US9135171B2 patent drawing
  • US9135171B2 patent drawing

AI summary

Page data of a virtual machine is represented for efficient save and restore operations. One form of representation applies to each page with an easily identifiable pattern. The page is described, saved, and restored in terms of metadata reflective of the pattern rather than a complete page of data reflecting the pattern. During a save or restore operation, however, the metadata of the page is represented, but not the page data. Another form of representation applies to each page sharing a canonical instance of a complex pattern that is instantiated in memory during execution, and explicitly saved and restored. Each page sharing the canonical page is saved and restored as a metadata reference, without the need to actually save redundant copies of the page data.