Dynamic Virtual Memory Page Size Promotion via Contiguous Reservation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current methods for managing real memory to support dynamic promotion of page sizes in virtual memory systems face inefficiencies, such as significant processing overhead and memory waste, as they either require rearranging pages or reserving large contiguous chunks of memory that may not be used.
Innovation Solution
A method where a contiguous range of real memory is reserved for virtual memory pages, allowing for efficient promotion without page movement, and unused reservations are released based on age to avoid memory waste.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If pages are rearranged in real memory to ensure contiguity for promotion, then page promotion can be supported, but processing overhead increases significantly
Solution Approach 1:
The system performs preliminary actions by reserving contiguous real memory regions in advance for groups of virtual pages that may need promotion. When promotion is needed, the pages are already in contiguous memory, eliminating the need for time-consuming page movements. The reservation is made before the promotion actually occurs, preparing the memory structure ahead of time.
Solution Approach 2:
The memory management system dynamically adjusts between two modes: reserving contiguous memory regions when promotion is anticipated, and releasing reservations when memory pressure exists. The system can promote pages to larger sizes when beneficial and demote or release reservations when needed, providing dynamic adaptability to changing workload requirements.
2Productivity
If large contiguous chunks of real memory are reserved for future promotion, then page promotion efficiency improves, but memory waste occurs when reservations are not used
Solution Approach 1:
The system discards (releases) memory reservations when they are no longer needed or when memory pressure exists. When virtual pages are promoted to larger page sizes, the reservations for the smaller pages are released and the memory is recovered for other uses. This prevents permanent memory waste while maintaining promotion efficiency.
Solution Approach 2:
Memory reservations are dynamically created and released based on actual promotion needs. The system reserves contiguous memory regions when pages are first mapped, but these reservations are temporary and are released when promotion occurs or when memory pressure requires freeing memory. This dynamic approach balances promotion efficiency with memory utilization.
3Ease of operation
If contiguous real memory is reserved for each virtual memory range, then promotion can occur without page movement, but memory flexibility decreases
Solution Approach 1:
The system performs preliminary reservation of contiguous memory regions to simplify the promotion operation. By preparing the contiguous memory structure in advance, the actual promotion operation becomes simple - just updating page tables to point to the reserved contiguous region. This preliminary action trades some memory flexibility for operational simplicity.
Solution Approach 2:
The system discards reservations (releases memory) when flexibility is needed or when promotions don't occur. This allows the system to recover memory that was temporarily reserved, restoring flexibility. The reservation is temporary and reversible, allowing the system to adapt to changing memory requirements while maintaining simple promotion operations when needed.
Data Source
AI summary
A computer implemented method, apparatus, and computer usable program code for managing real memory. In response to a request for a page to be moved into real memory, a contiguous range of real memory is reserved for the page corresponding to a contiguous virtual memory range to form a reservation within a plurality of reservations for the real memory. This reservation enables efficient promotion of pages to a larger page size. The page only occupies a portion of the contiguous range of real memory for the reservation. In response to a need for real memory, a selected reservation is released within the plurality of reservations based on an age of the selected reservation within the plurality of reservations.


