Memory Page Eviction Using Access-Frequency Hierarchy
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Computer systems that run Virtual Machines face performance degradation due to the computational overhead of tracking memory page access frequencies, which is necessary for efficient memory management, especially when transitioning pages between volatile memory and non-volatile storage.
Innovation Solution
Implementing a method that classifies memory pages into multiple lists with different scanning periods based on access frequencies, where frequently accessed pages are scanned less often and rarely accessed pages are scanned more frequently, and evicting pages to storage tiers based on their access history using a weighted average calculation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If memory page access frequencies are tracked continuously to make accurate eviction decisions, then memory management efficiency is improved, but computational overhead increases
Solution Approach 1:
The patent segments memory pages into multiple lists (first list for frequently accessed pages, second list for rarely accessed pages) and applies different scanning frequencies to each list. This segmentation allows the system to track access patterns of frequently accessed pages more closely while reducing the tracking overhead for rarely accessed pages, thereby resolving the contradiction between tracking accuracy and computational overhead.
Solution Approach 2:
The patent applies different scanning periods to different memory page lists based on their access characteristics. The first list (frequently accessed pages) is scanned with a first scanning period, while the second list (rarely accessed pages) is scanned with a second scanning period that is a multiple of the first. This local differentiation optimizes the balance between tracking accuracy and computational resources consumed.
2Speed
If frequently accessed memory pages are scanned more often to ensure they remain in memory, then memory access performance is improved, but system resources are consumed
Solution Approach 1:
The patent implements periodic scanning of memory pages with different scanning periods based on their access frequency. Frequently accessed pages in the first list are scanned with a shorter scanning period, while rarely accessed pages in the second list are scanned with a longer scanning period (a multiple of the first). This periodic action with varying frequencies ensures that frequently accessed pages are monitored more closely to maintain memory access performance, while reducing the scanning frequency for rarely accessed pages to conserve system resources.
Data Source
AI summary
A method includes, in a computing system in which one or more workloads access memory pages in a memory, defining multiple memory-page lists, and specifying for each memory-page list a respective different scanning period. Access frequencies, with which the memory pages are accessed, are estimated continually by periodically checking the memory pages on each memory-page list in accordance with the scanning period specified for that memory-page list, and re-assigning the memory pages to the memory-page lists based on the estimated access frequencies. One or more of the memory pages are evicted from the memory based on a history of assignments of the memory pages to the memory-page lists.


