Virtual Machine Memory Deduplication via Guest Feedback
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional memory deduplication techniques performed by hypervisors on a periodic basis often result in misalignment with the creation speed of duplicate memory pages, leading to inefficient resource usage and potential memory pressure issues, as they either occur too frequently with low memory savings or too infrequently with duplicate page buildup.
Innovation Solution
Virtual machine guests monitor memory modifications and send scan indicators to the hypervisor to initiate deduplication based on the amount of modified memory, allowing the hypervisor to align deduplication frequency and target read-only or read-mostly memory pages for efficient deduplication, reducing unnecessary processing and improving scanning speeds.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If memory deduplication is performed periodically by the hypervisor, then memory pages storing duplicate content are consolidated, but the deduplication frequency may be misaligned with the creation speed of duplicate memory pages, resulting in inefficient resource usage
Solution Approach 1:
The virtual machine guest monitors memory page modifications and provides feedback to the hypervisor by sending scan indicators when duplicate memory pages are detected. This feedback mechanism allows the hypervisor to align deduplication operations with the actual creation rate of duplicate pages, improving both memory consolidation effectiveness and processing efficiency.
Solution Approach 2:
The virtual machine guest performs preliminary detection of duplicate memory pages and notifies the hypervisor before full deduplication is required. This preliminary action allows the system to prepare for deduplication operations at optimal moments, reducing the lag between duplicate page creation and consolidation.
2Quantity of substance
If memory deduplication is performed frequently, then duplicate memory pages are consolidated, but processing resources are wasted when few duplicates are located
Solution Approach 1:
The system uses feedback from virtual machine guests about actual duplicate page detection to dynamically adjust deduplication frequency. When guests indicate few duplicates exist, the hypervisor reduces scanning frequency, conserving processing resources while maintaining memory savings when duplicates are present.
Solution Approach 2:
The deduplication frequency is made dynamic rather than static, adjusting based on the actual presence and creation rate of duplicate memory pages as reported by virtual machine guests. This dynamic approach optimizes the balance between memory savings and processing resource consumption.
3Use of energy by moving object
If memory deduplication is performed infrequently, then processing resources are conserved, but duplicate memory pages build up causing memory pressure
Solution Approach 1:
Virtual machine guests continuously monitor memory page modifications and provide feedback to the hypervisor. When duplicate pages are detected, guests send scan indicators that trigger timely deduplication operations, preventing memory pressure buildup while avoiding unnecessary processing when duplicates are absent.
Solution Approach 2:
The virtual machine guest performs self-service by monitoring its own memory page modifications and initiating deduplication requests when needed. This self-service approach allows the system to respond to actual memory conditions without requiring continuous hypervisor intervention, reducing processing overhead while preventing memory pressure.
4Quantity of substance
If the hypervisor scans all memory pages to identify duplicates, then comprehensive deduplication is achieved, but scanning time increases
Solution Approach 1:
The patent extracts the duplicate detection function from the hypervisor and places it in the virtual machine guest. The guest monitors only its own memory page modifications and sends targeted scan indicators to the hypervisor, eliminating the need for the hypervisor to scan all memory pages and significantly reducing scanning time.
Solution Approach 2:
The memory monitoring and duplicate detection process is segmented between the virtual machine guest and the hypervisor. The guest handles local monitoring and detection, while the hypervisor performs consolidation only when requested. This segmentation distributes the scanning workload and reduces the time the hypervisor must spend scanning memory pages.
Data Source
AI summary
Methods, systems, and computer program products are included for initiating deduplication of memory by virtual machine guests. A method includes providing a virtual machine, by a hypervisor, and running a guest on the virtual machine. The guest sends the hypervisor a scan indicator based on an amount of the virtual machine's memory that has been modified. Responsive to the scan indicator, the hypervisor triggers memory scanning and deduplication of memory pages that are identified by the memory scanning as storing identical content.


