Heterogeneous Unified Memory for Dynamic Space Allocation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional computer systems require hard shutdown and reboot to reconfigure memory resources when application behavior or I/O patterns change, making them inflexible, inconvenient, and not scalable for managing different types of inactive memory pages across swap and disk cache subsystems.
Innovation Solution
A heterogeneous unified memory system that manages an extended unified memory space across multiple physical heterogeneous memory modules, using cold page reclamation logic to prioritize and distribute anon-type and file-type memory pages across different pools of memory modules based on characteristics, enabling dynamic tuning and efficient space allocation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If conventional separate subsystems are used to manage anon-type and file-type memory pages, then each subsystem can be independently managed, but it is not possible to leverage physical space or share information between subsystems and requires hard shutdown for reconfiguration
Solution Approach 1:
The patent merges the swap subsystem and disk cache subsystem into a single unified memory management system. The unified memory manager consolidates previously separate functions into one system that can dynamically allocate space to both anon-type and file-type memory pages, enabling space sharing and information leverage between what were previously separate subsystems without requiring hard shutdowns for reconfiguration
Solution Approach 2:
The unified memory manager implements dynamic space allocation that can adjust the amount of space allocated to anon-type and file-type memory pages based on current system needs. This dynamic tuning capability allows the system to adapt to changing workloads without requiring hard shutdowns and reboots, resolving the contradiction between adaptability and system complexity
2Adaptability or versatility
If physical space allocation is fixed for swap and disk cache subsystems, then system stability is maintained, but reconfiguration requires hard shutdown and reboot
Solution Approach 1:
The unified memory manager implements dynamic space allocation that can adjust the amount of space allocated to anon-type and file-type memory pages based on current system needs. This dynamic tuning capability allows the system to adapt to changing workloads without requiring hard shutdowns and reboots, resolving the contradiction between adaptability and downtime
Solution Approach 2:
The system enables continuous memory management operations without interruption. The unified memory manager can reallocate space between subsystems while the system remains operational, maintaining continuous useful action rather than requiring periodic hard shutdowns for reconfiguration
3Productivity
If separate swap subsystem and disk cache subsystem are used, then specific management strategies can be applied to each type of memory page, but physical space cannot be shared and information cannot be leveraged between subsystems
Solution Approach 1:
The patent merges the swap subsystem and disk cache subsystem into a single unified memory management system. The unified memory manager consolidates previously separate functions into one system that can dynamically allocate space to both anon-type and file-type memory pages, enabling space sharing and information leverage between what were previously separate subsystems
Solution Approach 2:
The unified memory manager serves multiple functions that were previously handled by separate subsystems. It can manage both anon-type memory pages (traditionally handled by swap) and file-type memory pages (traditionally handled by disk cache), providing universal memory management capability that improves space utilization while maintaining the ability to apply different management strategies
Data Source
AI summary
Inventive aspects include a heterogeneous unified memory section, which includes an extended unified memory space across a plurality of physical heterogeneous memory modules. A cold page reclamation logic section can receive and prioritize cold pages from a system memory. The cold pages can include a first subset of memory pages having a first type of memory data and a second subset of memory pages having a second type of memory data. For example, the cold pages can include anon-type memory pages and file-type memory pages. A dynamic tuning logic section can manage space allocation within the extended unified memory space. An intelligent page sort logic section can distribute the cold pages among different pools of physical heterogeneous memory modules based on varying characteristics of the pools, and based on the assigned priorities.


