Distributed Memory Sharing via Node Mirroring and Coherence Protocol
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing messaging models in distributed computing systems are inefficient due to high overhead and latency, making them unsuitable for large-scale and mission-critical applications where efficient information sharing across nodes is necessary.
Innovation Solution
Implementing a method where nodes in a distributed system share a portion of their main memory, with one node acting as a 'home' node and others as 'sharer' nodes, mirroring the shared memory to reduce data transfer overhead and latency, while maintaining data coherence through a memory coherence protocol.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If request-response messaging model is used for information sharing between nodes, then information exchange is enabled, but overhead and latency increase significantly
Solution Approach 1:
The patent creates a copy of the remote node's memory space in the local node's address space. When a thread needs to access remote data, it directly accesses the copied memory location instead of sending requests through messaging protocols. This eliminates the overhead of message passing, context switching, and queue waiting, reducing latency while maintaining information sharing capability.
2Reliability
If request-response messaging model is used for information sharing between nodes, then information exchange is enabled, but system overhead increases
Solution Approach 1:
The patent creates a copy of the remote node's memory space in the local node's address space. When a thread needs to access remote data, it directly accesses the copied memory location instead of sending requests through messaging protocols. This eliminates the overhead of message passing, context switching, and queue waiting, reducing latency while maintaining information sharing capability.
3Productivity
If memory is shared across distributed nodes through mirroring, then data access efficiency improves, but data coherence maintenance becomes complex
Solution Approach 1:
The patent implements a coherence protocol that uses feedback mechanisms to track the state of shared memory locations. The system maintains coherence information that records which nodes have copies of which data, and automatically manages synchronization when data is modified. This feedback-based approach ensures data consistency while abstracting the complexity of coherence management from individual threads.
Data Source
AI summary
A method and apparatus are disclosed for enabling nodes in a distributed system to share one or more memory portions. A home node makes a portion of its main memory available for sharing, and one or more sharer nodes mirrors that shared portion of the home node's main memory in its own main memory. To maintain memory coherency, a memory coherence protocol is implemented. Under this protocol, a special data value is used to indicate that data in a mirrored memory location is not valid. This enables a sharer node to know when to obtain valid data from a home node. With this protocol, valid data is obtained from the home node and updates are propagated to the home node. Thus, no “dirty” data is transferred between sharer nodes. Consequently, the failure of one node will not cause the failure of another node or the failure of the entire system.


