Virtual Machine Memory Sharing via Compression and Migration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing virtual machine memory management techniques, such as page sharing, do not effectively utilize content-identical memory pages across multiple virtual machines to optimize memory usage and performance, especially in scenarios with high availability requirements.

Innovation Solution

A method and apparatus for monitoring virtual machines to identify content-identical memory pages, migrating those exceeding a preset threshold to a target host machine, and performing memory compression to enable sharing, while considering high availability requirements and compression thresholds.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If memory compression is performed on homogeneous virtual machines to enable memory sharing, then memory usage efficiency is improved, but system complexity increases due to migration and compression operations

Engineering Contradiction:
Improvememory usage efficiencyVSAvoidsystem complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent segments the memory management process into distinct phases: identification of homogeneous virtual machines, migration to target host, and memory compression. This segmentation allows each subsystem to be optimized independently while maintaining overall system efficiency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a management entity that acts as an intermediary to coordinate between virtual machines, host machines, and memory compression operations. This intermediary abstracts the complexity of memory sharing from individual virtual machines while enabling efficient resource utilization.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If virtual machines are migrated to different target host machines to ensure high availability, then system reliability is improved, but migration overhead and time consumption increase

Engineering Contradiction:
Improvehigh availabilityVSAvoidmigration time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary identification of homogeneous virtual machines and pre-establishes target host machine selections before migration is needed. This preliminary action reduces the time required during actual migration events while ensuring high availability requirements are met.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates copies of virtual machine memory pages on target host machines during migration, enabling failover capability. These copies ensure high availability while the copying process is optimized to minimize migration time through selective migration of only content-identical pages.

Inventive Principle:
Principle #26Copying

3Loss of substance

If memory sharing is implemented across virtual machines, then resource costs are reduced, but measurement and detection of content-identical pages becomes more difficult

Engineering Contradiction:
Improveresource costsVSAvoiddetection difficulty
Core Design Contradiction:
Loss of substanceVSDifficulty of detecting and measuring

Solution Approach 1:

The patent employs hash algorithms that transform memory page content into fixed-length identifiers, effectively 'coloring' or tagging pages with their content signature. This transformation makes detection of content-identical pages efficient and scalable, enabling resource optimization without excessive detection complexity.

Inventive Principle:
Principle #32Color changes

Data Source

PatentUS20240061701A1Memory sharing method and device for virtual machines
Publication Date: 2024.02.22 BEIJING HUIJUN TECH CO LTD
  • US20240061701A1 patent drawing
  • US20240061701A1 patent drawing
  • US20240061701A1 patent drawing

AI summary

A memory sharing method and device for virtual machines. The method includes: monitoring virtual machines in a virtual machine set, and determining homogeneous virtual machines in the virtual machine set, wherein the homogeneous virtual machines are used for representing virtual machines having the same memory pages; migrating virtual machines of which the number of the same memory pages exceeds a preset threshold among the homogeneous virtual machines to a target host machine; and performing memory compression on the homogeneous virtual machines on the target host machine to achieve memory sharing of the homogeneous virtual machines for the same memory pages.