Post-copy VM Migration with Assigned Device Page Fault Handling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current virtual machine migration techniques face challenges in efficiently managing memory during post-copy migration, particularly in ensuring that all required pages are available at the destination before they are accessed, leading to page faults and suboptimal performance.

Innovation Solution

The method involves a hypervisor using an IOMMU to store and manage mappings of pages, detecting page faults, and actively copying and updating mappings to ensure that pages are migrated and accessible at the destination, thereby preventing page absences and optimizing migration performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If pre-copy migration is used to migrate all pages before VM operation, then page availability at destination is improved, but migration time and performance degradation are worsened

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

Solution Approach 1:

The patent applies preliminary action by pre-migrating only the subset of pages that are required by assigned devices before the VM migration completes. This is achieved by identifying which pages are needed by I/O devices in advance, and migrating those specific pages first through the IOMMU mapping mechanism, while leaving other pages to be migrated on-demand during post-copy migration.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If all pages are migrated before VM operation resumes, then page faults are reduced, but migration performance and system availability are worsened

Engineering Contradiction:
Improvepage fault reductionVSAvoidmigration performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies local quality by differentiating the migration priority and timing of different page subsets. Pages required by assigned devices are migrated with high priority and made available beforehand, while other pages are migrated asynchronously in the background. This creates localized optimization where critical pages are ensured to be available without requiring complete migration of all pages.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent applies preliminary action by pre-migrating only the subset of pages that are required by assigned devices before the VM migration completes. This is achieved by identifying which pages are needed by I/O devices in advance, and migrating those specific pages first through the IOMMU mapping mechanism, while leaving other pages to be migrated on-demand during post-copy migration.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If post-copy migration is used to improve availability, then system availability during migration is improved, but page faults increase and performance deteriorates

Engineering Contradiction:
Improvesystem availabilityVSAvoidpage fault rate
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent applies preliminary action by pre-migrating only the subset of pages that are required by assigned devices before the VM migration completes. This is achieved by identifying which pages are needed by I/O devices in advance, and migrating those specific pages first through the IOMMU mapping mechanism, while leaving other pages to be migrated on-demand during post-copy migration.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10430221B2Post-copy virtual machine migration with assigned devices
Publication Date: 2019.10.01 RED HAT ISRAEL
  • US10430221B2 patent drawing
  • US10430221B2 patent drawing
  • US10430221B2 patent drawing

AI summary

A hypervisor updates a mapping at a first time by storing a first mapping of the first plurality of pages in an input-output memory management unit. A guest of a virtual machine attempts to access at least one byte of each of a second plurality of pages on the migration destination, which are absent from the migration destination, such that a plurality of page faults are generated responsive to the guest access attempt. The hypervisor detects the plurality of page faults, copies the second plurality of pages of the guest of the virtual machine, from the migration source to the migration destination, and stores a second mapping of the second plurality of pages in the input-output memory management unit and a device receives access to the second plurality of pages.