Memory Page Pool Allocation for In-Rank Data Copying
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In-memory data copying in DRAM is inefficient due to CPU intervention, leading to performance deterioration caused by bandwidth and latency issues when copying data between different memory areas, especially when the source and destination areas are not in the same rank or channel.
Innovation Solution
A method and apparatus that align memory pages into a page pool, allowing allocation of a destination page with the same rank as the source page, and updating the page table to map physical addresses to continuous logical addresses, thereby reducing the need for CPU intervention and improving memory performance by keeping the source and destination within the same rank and channel.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If data is copied between different memory ranks or channels, then data copying functionality is achieved, but memory performance deteriorates due to increased bandwidth and latency overhead
Solution Approach 1:
The patent applies local quality by allocating destination pages within the same memory rank as the source page, creating localized data copying operations. The memory controller identifies the source page's rank and allocates the destination page to the same rank, ensuring that data copying occurs within a local memory region rather than spanning across different ranks or channels, thereby reducing bandwidth and latency overhead
Solution Approach 2:
The patent implements preliminary action by pre-aligning memory pages into a page pool structure organized by memory ranks before data copying operations occur. This pre-organization allows the memory controller to quickly identify and allocate destination pages within the same rank as source pages, eliminating the need for runtime rank-switching operations and reducing copying time
2Ease of operation
If CPU intervention is used for in-memory data copying, then data copying control is achieved, but bandwidth and latency overhead increases
Solution Approach 1:
The patent implements self-service by enabling the memory controller to autonomously perform data copying operations without CPU intervention. The memory controller independently manages page pool allocation, identifies source and destination pages, and executes data copying within the same memory rank, freeing the CPU from memory management tasks and eliminating the bandwidth and latency overhead associated with CPU involvement in data copying
Solution Approach 2:
The patent introduces the memory controller as an intermediary between the CPU and memory system for data copying operations. Instead of the CPU directly managing data copying, the memory controller acts as an intermediary that handles page pool management and executes copying operations, reducing the burden on the CPU and improving overall system performance
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A method of managing memory includes generating a page pool by aligning a plurality of pages of a memory; when a request to store first data is received, allocating a destination page corresponding to the first data using a page pool; and updating a page table using information about the allocated destination page.