Dirty Page Tracking for GPU Virtual Machine Live Migration
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
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
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.
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.
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
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.
Data Source
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.


