Hypervisor Super Page Vector for DMA Sub-Page Swapping
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current Direct Memory Access (DMA) systems in computer systems lack efficient optimization for page swapping between local and remote virtual memory pages, leading to unnecessary data copying and suboptimal performance in multi-core environments.
Innovation Solution
The implementation of a system and method that utilizes a hypervisor-based super page vector to differentiate between local and remote virtual memory pages during DMA operations, enabling lazy swapping of super pages composed of sub pages on an as-needed basis, thereby optimizing DMA operations and reducing unnecessary data transfer.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional DMA systems are used for memory access, then basic memory operations can be performed, but page swapping between local and remote virtual memory pages is inefficient and causes unnecessary data copying
Solution Approach 1:
The patent segments virtual memory pages into local and remote portions, allowing DMA operations to selectively access only the necessary segments. The system divides page swapping operations into sub-page level transfers rather than moving entire pages, reducing unnecessary data copying between local and remote memory spaces.
Solution Approach 2:
The patent implements partial action by performing lazy swapping of only the required sub-pages rather than swapping entire pages. This allows the system to transfer only the specific portions of memory that are actually needed, avoiding excessive data transfer and optimizing DMA operation efficiency.
2Productivity
If conventional page swapping is implemented, then virtual memory management is maintained, but system efficiency deteriorates due to unnecessary data copying in multi-core environments
Solution Approach 1:
The patent segments the page swapping process into finer granularity sub-page operations, allowing the system to swap only the specific sub-pages that are needed rather than entire pages. This segmentation reduces the time required for data copying while maintaining virtual memory management functionality.
Solution Approach 2:
The patent implements preliminary action through the super page vector mechanism that pre-identifies and differentiates between local and remote virtual memory pages before DMA operations occur. This preliminary classification enables the system to optimize data transfer paths and avoid unnecessary copying operations.
3Productivity
If full page swapping is performed, then memory management is simplified, but resource utilization increases unnecessarily
Solution Approach 1:
The patent segments memory management operations at the sub-page level, allowing the system to manage and transfer only the specific portions of memory that are actually required. This approach reduces the volume of data transferred while maintaining effective memory management, optimizing resource utilization.
Solution Approach 2:
The patent applies partial action by performing swapping operations only on the necessary sub-pages rather than entire pages. This reduces the quantity of data transferred during memory management operations while maintaining the effectiveness of virtual memory management.
Data Source
AI summary
A system and method is illustrated for identifying an Input/Output (I/O) driver module, using a hypervisor, to receive a read command to read a virtual memory page from a remote memory location. Further, the system and method includes reading the remote virtual memory page, using the I/O driver module, into a memory buffer managed by the I/O driver module. Additionally, the system and method includes storing the virtual memory page in the memory buffer to a persistent storage device. The system and method also includes identifying a remote super page, using a hypervisor, the remote super page including a remote sub page. Additionally, the system and method includes identifying a local super page, using the hypervisor, the local super page including a local sub page. Further, the system and method includes swapping the local sub page for the remote sub page, using the hypervisor, the swapping occurring over a network.


