PRI Overhead Reduction in Virtual Machine Migration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current virtual machine migration systems incur significant overhead due to the need to recopy all or most I/O writable pages during live migration, leading to inefficiencies and increased latency, especially in PCIe systems, where Page Request Interface (PRI) implementations add additional bytes to requests and responses, resulting in performance degradation.

Innovation Solution

The system reduces PRI overhead by generating and using a migration page table that tracks write access to memory addresses, allowing devices to bypass sending Page Request Messages (PRMs) for memory pages outside the migration range, thereby eliminating unnecessary requests and responses.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all memory pages are copied during live migration, then memory consistency is maintained, but migration overhead and latency increase significantly

Engineering Contradiction:
Improvememory consistencyVSAvoidmigration latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments memory pages into two categories: those being migrated and those not being migrated. By creating a migration page table that tracks which pages are subject to migration, the system can selectively handle page copying operations. This segmentation allows the system to maintain consistency only for migrated pages while avoiding unnecessary operations on non-migrated pages, thereby reducing overall migration overhead and latency.

Inventive Principle:
Principle #1Segmentation

2Reliability

If PRI is used to track write access to memory pages, then storage device integrity is maintained, but overhead increases due to additional request and response bytes

Engineering Contradiction:
Improvestorage device integrityVSAvoidPRI overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the page tracking functionality from the general PRI mechanism and implements a dedicated migration page table. This separate tracking structure allows the system to monitor write access to migrated pages without requiring full PRI protocol overhead for all memory access operations. By taking out only the essential tracking function, the system maintains storage device integrity while reducing the complexity and overhead associated with comprehensive PRI implementation.

Inventive Principle:
Principle #2Taking out (Extraction)

3Reliability

If devices send PRMs for all memory access during migration, then data consistency is ensured, but performance degrades due to increased request volume

Engineering Contradiction:
Improvedata consistencyVSAvoidmigration throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies partial action by requiring PRM messages only for memory pages that are being migrated, rather than for all memory access operations. The migration page table enables the system to identify which specific pages require consistency tracking, allowing devices to send PRMs selectively. This partial approach ensures data consistency for migrated pages while avoiding the performance degradation that would result from requiring PRMs for every memory access operation.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11182092B1PRI overhead reduction for virtual machine migration
Publication Date: 2021.11.23 RED HAT INC
  • US11182092B1 patent drawing
  • US11182092B1 patent drawing
  • US11182092B1 patent drawing

AI summary

The present disclosure provides a new and innovative system, methods and apparatus for PRI overhead reduction for virtual machine migration. In an example, a system includes a memory and a hypervisor. The memory includes a plurality of memory addresses on a source host. The hypervisor is configured to generate a migration page table associated with the memory. The hypervisor is also configured to receive a migration command to copy data from a portion of the memory to a destination host. A first range of memory addresses includes data copied from the portion of the memory and a second range of memory addresses includes data that is not copied. The hypervisor is also configured to modify the migration page table to include a page table entry associated with the first range of memory addresses being migrated from the source host to the destination host.