Large Page Activity Detection for Memory Optimization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing systems face performance degradation due to inefficient management of large pages in virtual machines, leading to memory wastage and performance issues when physical memory is scarce, as they indiscriminately demote large pages without considering their activity levels.
Innovation Solution
A method to identify and classify the activity levels of large pages by tracking accesses to small pages within them, allowing for intelligent selection and decomposition of inactive large pages into small pages for memory reclamation, thereby optimizing memory usage and improving system performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If large pages are used to cache mappings in TLB, then TLB miss rate decreases and performance increases, but physical memory waste increases when memory becomes scarce
Solution Approach 1:
The system dynamically changes the page size parameter from large to small based on activity level detection. When a large page is identified as inactive, its size parameter is changed to small page size, allowing the TLB to maintain large page performance for active pages while freeing memory from inactive pages.
Solution Approach 2:
The patent implements dynamic page size adjustment by monitoring access patterns and converting large pages to small pages when they become inactive. This dynamic adaptation allows the system to optimize between TLB performance and memory utilization based on real-time workload conditions.
2Loss of substance
If large pages are randomly selected for demotion to small pages, then memory pressure is reduced, but application performance may deteriorate due to unnecessary page splits
Solution Approach 1:
The system uses access bit feedback from page table entries to determine whether to demote large pages. By continuously monitoring access patterns and using this feedback to guide demotion decisions, the system avoids splitting pages that are actively being accessed, thus preventing performance degradation.
Solution Approach 2:
The patent performs preliminary activity level assessment by checking access bits before demoting large pages. This preliminary action ensures that only truly inactive pages are selected for demotion, preventing unnecessary page splits that would harm application performance.
Data Source
AI summary
Large pages that may impede memory performance in computer systems are identified. In operation, mappings to selected large pages are temporarily demoted to mappings to small pages and accesses to these small pages are then tracked. For each selected large page, an activity level is determined based on the tracked accesses to the small pages included in the large page. By strategically selecting relatively low activity large pages for decomposition into small pages and subsequent memory reclamation while restoring the mappings to relatively high activity large pages, memory consumption is improved, while limiting performance impact attributable to using small pages.


