Persistent Memory Controller Latency Reduction via Address Relationship Prefetching
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Persistent memory systems face high latency issues due to the difficulty in predicting and prefetching data references, especially in operations involving linked lists or graphs, as conventional prefetchers struggle with spatial access locality and repeatability of addresses.
Innovation Solution
Implementing a memory controller that stores and retrieves relationships between addresses in persistent memory, using techniques like trace identifiers and hash tables to prefetch data, thereby improving latency by anticipating data access patterns.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If conventional prefetchers are used to access persistent memory, then data access can be performed, but latency remains high due to inability to predict and prefetch data references in operations like linked lists or graphs
Solution Approach 1:
The patent applies preliminary action by storing relationship information (such as trace identifiers and hash table entries) in persistent memory in advance. This allows the memory controller to retrieve pre-stored relationships and prefetch data before it is actually needed, thereby reducing latency without requiring complex real-time prediction algorithms.
2Loss of time
If relationship information is stored in persistent memory to enable prefetching, then latency is reduced, but memory space is consumed for storing relationship data
Solution Approach 1:
The patent applies local quality by making the persistent memory bit-addressable rather than using traditional block-based addressing. This allows relationship information to be stored at the precise granularity needed, minimizing the amount of memory space consumed while enabling efficient prefetching operations. The bit-addressable nature allows storing only the necessary relationship data without wasting space on block overhead.
3Measurement precision
If bit-addressable persistent memory is used to store relationship information, then prefetching accuracy is improved, but device complexity increases
Solution Approach 1:
The patent introduces a memory controller as an intermediary between the processor and persistent memory. This controller handles the complexity of bit-addressable operations, trace identifier management, and hash table lookups, thereby enabling high prefetching accuracy without requiring the processor itself to become more complex. The memory controller absorbs the addressing complexity while providing simple interfaces to the processor.
Data Source
AI summary
A processor or system may include a memory controller to store, in a pre-allocated portion of bit-addressable, random access persistent memory (PM), a relationship between a group of addresses being stored in the PM according to a set of instructions when executed. The memory controller is further to retrieve the relationship when accessing an address from the groups of addresses.


