Disaggregated Memory Routing to Relieve Fabric Interconnect Congestion
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Disaggregated memory systems experience significant traffic congestion on the fabric interconnect due to imbalanced memory access patterns, where one computing node dominates access to a particular fabric-attached memory module, starving off access from others, and small write accesses consume bandwidth without necessitating interconnect use.
Innovation Solution
Implementing a routing system with a tracking system that offloads tasks to a local processor associated with the fabric-attached memory module when access thresholds are exceeded and replicates data in the computing node's cache memory when write access is low, thereby reducing interconnect traffic.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If computing nodes access fabric-attached memory modules through the fabric interconnect, then memory access requests can be routed to remote memory, but fabric interconnect traffic congestion increases and access latency increases
Solution Approach 1:
The patent segments the memory access path by introducing local processors at fabric-attached memory modules that handle access requests locally, separating the memory access function from the fabric interconnect. This segmentation allows memory access to occur without always traversing the fabric interconnect, reducing congestion and latency while maintaining the ability to access remote memory when needed.
Solution Approach 2:
The patent introduces local processors as intermediary components between computing nodes and fabric-attached memory modules. These local processors act as mediators that can directly service memory access requests, eliminating the need for requests to traverse the entire fabric interconnect path, thereby reducing traffic congestion and access latency.
2Productivity
If one computing node dominates access to a fabric-attached memory module, then memory bandwidth to that module is saturated, but other computing nodes are starved of memory access
Solution Approach 1:
The patent segments the memory access function by placing local processors at each fabric-attached memory module that independently handle access requests. This segmentation creates separate access paths for different computing nodes, preventing a single node from saturating the entire fabric interconnect and ensuring fair access distribution across multiple nodes.
Solution Approach 2:
The patent implements local quality by providing each fabric-attached memory module with its own local processor that is dedicated to servicing access requests for that specific module. This local quality ensures that memory access is handled locally without affecting other modules or computing nodes, guaranteeing fair and consistent access across the system.
3Loss of energy
If computing nodes replicate data in local cache memory, then fabric interconnect traffic is reduced, but memory consistency management becomes more complex
Solution Approach 1:
The patent applies preliminary action by having computing nodes replicate data into local cache memory before it is actually needed for processing. This proactive replication reduces the frequency of fabric interconnect traffic by serving common read requests from local cache, while the system manages consistency through controlled replication mechanisms that track when data is replicated and when synchronization is needed.
Data Source
AI summary
One or both of read and write accesses to a fabric-attached memory module via a fabric interconnect are monitored. In one or more implementations, offloading of one or more tasks accessing the fabric-attached memory module to a processor of a routing system associated with the fabric-attached memory module is initiated based on the read and write accesses to the fabric-attached memory module. Additionally or alternatively, replicating memory of the fabric-attached memory module to a cache memory of a computing node in the disaggregated memory system executing one or more tasks of a host application is initiated based on the write accesses to the fabric-attached memory module.


