Dirty Page Tracking for GPU Virtual Machine Live Migration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

During live migration of virtual machines on graphics processing units (GPUs), the hypervisor typically copies all pages of system memory and frame buffer, including unmodified ones, which consumes additional bandwidth and slows the migration process, affecting user experience.

Innovation Solution

The system identifies and transfers only the subset of pages modified by the source virtual machine (referred to as 'dirty' pages) by maintaining a page table that tracks read and write requests, allowing the hypervisor to copy only these modified pages to the destination virtual machine, reducing the amount of data transferred.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the hypervisor copies all pages of system memory and frame buffer during live migration, then the migration is complete and reliable, but the bandwidth consumption increases and migration time increases

Engineering Contradiction:
Improvemigration completenessVSAvoidmigration time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary tracking of dirty pages during the migration process. By maintaining page tables that record which pages have been modified since the last copy operation, the system prepares information in advance that allows selective copying of only the necessary pages, rather than copying all pages uniformly.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The invention extracts and identifies only the modified (dirty) pages from the complete set of memory pages. By using page table tracking to separate modified pages from unmodified pages, the system transfers only the necessary subset of pages, eliminating the need to transfer redundant unmodified pages.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If the hypervisor copies all pages of system memory and frame buffer during live migration, then the migration is complete and reliable, but the bandwidth consumption increases

Engineering Contradiction:
Improvemigration completenessVSAvoidbandwidth consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The system performs preliminary tracking of dirty pages during the migration process. By maintaining page tables that record which pages have been modified since the last copy operation, the system prepares information in advance that allows selective copying of only the necessary pages, rather than copying all pages uniformly.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The invention extracts and identifies only the modified (dirty) pages from the complete set of memory pages. By using page table tracking to separate modified pages from unmodified pages, the system transfers only the necessary subset of pages, eliminating the need to transfer redundant unmodified pages.

Inventive Principle:
Principle #2Taking out (Extraction)

3Measurement precision

If the system tracks all memory access requests to identify dirty pages, then the precision of identifying modified pages is improved, but the device complexity increases

Engineering Contradiction:
Improvedirty page identification accuracyVSAvoidpage table maintenance complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The GPU's page table structure automatically tracks memory access patterns through its existing address translation mechanism. The page tables self-update to reflect which pages have been accessed or modified, eliminating the need for separate tracking hardware or complex monitoring systems while maintaining high precision in identifying dirty pages.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11256530B2Targeted page migration for guest virtual machine
Publication Date: 2022.02.22 ATI TECHNOLOGIES ULC
  • US11256530B2 patent drawing
  • US11256530B2 patent drawing
  • US11256530B2 patent drawing

AI summary

A processing system identifies a subset of pages of memory allocated to a source guest virtual machine (VM) running at a first graphics processing unit (GPU) that were modified by the source guest VM and transferring only the subset to a destination guest VM running at a second GPU when performing a live migration from the source guest VM to the destination guest VM. The first GPU maintains a page table of system memory addresses or frame buffer addresses allocated to and accessed by the source guest VM during a session, including an indication of whether the data was modified. Based on the page table information, the processing system identifies and transfers only the modified pages from the source guest VM to the destination guest VM, thereby reducing the time and bandwidth used for migration.