Memory Subsystem Data Graph for Read Latency Reduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional memory sub-systems face challenges in predicting data block access patterns, leading to increased latency in read operations due to difficulty in detecting and utilizing patterns of data block requests from the operating system and various applications.
Innovation Solution
A data graph is created with nodes representing data blocks and edges indicating the order of access, where edge values are assigned based on spatial and temporal characteristics to predict future requests, enabling pre-fetching and migration of data between slower and faster memory components.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If conventional memory sub-systems store data without predicting access patterns, then data storage is simple, but read operation latency increases
Solution Approach 1:
The system performs preliminary actions by predicting future data block requests using a data graph structure and pre-fetching data blocks before they are actually requested. The controller creates a data graph with nodes representing data blocks and edges representing access patterns, then uses this graph to predict and pre-fetch data blocks proactively, reducing read operation latency by having data ready before it is needed.
2Loss of time
If data blocks are pre-fetched based on access patterns, then read latency is reduced, but the complexity of detecting and utilizing patterns increases
Solution Approach 1:
The system implements feedback by continuously monitoring actual data block requests and updating the data graph structure based on observed access patterns. The controller compares predicted access patterns against actual requests, refines the edge values in the data graph to better reflect real access behavior, and uses this feedback to improve future predictions, making pattern detection more accurate over time.
Solution Approach 2:
The data graph structure serves itself by automatically learning and adapting to access patterns through continuous updates. The system uses its own operational data to refine its prediction model, with the data graph evolving based on actual access behavior observed during system operation, eliminating the need for external pattern analysis tools.
3Measurement precision
If edge values in data graph are updated based on each access, then prediction accuracy improves, but processing overhead increases
Solution Approach 1:
The system applies partial action by selectively updating only the specific edge values in the data graph that are directly affected by each data block access, rather than recalculating the entire data graph structure. This targeted approach refines prediction accuracy for accessed data blocks while minimizing unnecessary processing overhead on unrelated parts of the data graph.
Data Source
AI summary
A graph can be generated based on an access pattern associated with blocks of a memory device that have been accessed by a host system, wherein the graph comprises nodes representing at least a subset of the blocks that have been accessed by the host system and edges that are based on the access pattern, wherein each edge is associated with a respective probability value between a respective pair of nodes. A number of edges having respective probability values that satisfy a probability value threshold criterion can be determined. It can be determined whether the number of edges satisfies a decayed edge value condition. In response to determining that the number of edges does not satisfy the decayed edge value condition, the graph can be removed.


