Marshalled Cache Coherency for Data-Metadata Synchronization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional cache coherency techniques fail to ensure synchronized updating of data and associated metadata, leading to asynchronism and potential cache coherency issues when multiple clients concurrently work on shared data with metadata in computing devices.
Innovation Solution
A method and system for cache coherency that involves a second client cache system requesting to read a data element with associated metadata, detecting the metadata in a first client cache system, writing cache lines containing the metadata and associated data elements, invalidating the metadata in the first client cache system, and completing the read request by receiving the metadata and data elements.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conventional cache coherency techniques treat data and metadata as disjoint, then cache management is simpler, but data and metadata become desynchronized leading to coherency issues
Solution Approach 1:
The patent merges data and metadata into a unified cache coherency management framework. The snoop controller now handles both data and metadata elements together, treating them as interconnected entities that require synchronized updates. This is achieved by monitoring bus transactions for both data and metadata, and by invalidating both types of elements in coordination when updates occur, ensuring they remain synchronized while maintaining manageable complexity through unified control logic.
Solution Approach 2:
The patent implements preliminary action by having the snoop controller proactively invalidate metadata elements in anticipation of data updates, and vice versa. When a data element is updated, the controller preemptively invalidates associated metadata elements before they can become desynchronized. This preliminary invalidation prevents coherency issues before they occur, maintaining reliability while managing complexity through forward-looking control.
2Productivity
If metadata is kept separate from data in cache, then storage organization is simpler, but processing efficiency decreases due to asynchronism
Solution Approach 1:
The patent combines data and metadata management in the cache system, where the snoop controller monitors and manages both types of elements together. This unified approach ensures that data and metadata remain synchronized, improving processing efficiency by eliminating asynchronism while managing complexity through integrated control rather than separate management systems.
Solution Approach 2:
The snoop controller implements feedback mechanisms by monitoring bus transactions and automatically invalidating metadata elements when data elements are updated, and vice versa. This feedback loop ensures continuous synchronization between data and metadata in the cache, improving processing efficiency by preventing desynchronism while maintaining manageable complexity through automated response to detected changes.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Memory system features may promote cache coherency where first and second memory clients may attempt to work on the same data. A second client cache system may provide a read request for data and associated metadata. The metadata element may be detected in a first client cache system. The first client cache system may write or flush, such as to a system memory, one or more cache lines containing the metadata and associated data and invalidate the flushed cache lines. The second client cache system may receive the data and metadata, such as from the system memory, completing or fulfilling the read request.