Dual-Granularity Directory Cache Coherence Tracking
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional cache algorithms face inefficiencies due to maintaining coherence at a single granularity level, either block or region, which fails to balance storage overhead and bandwidth demand effectively.
Innovation Solution
A system and method that tracks coherence state of cache blocks using a global directory, providing both region and block level sharing information, allowing for the organization and updating of coherence states based on cache storage changes, thereby determining the location of up-to-date cache block copies.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of energy
If coherence is tracked only at block level, then bandwidth demand is high, but storage overhead is high
Solution Approach 1:
The patent segments coherence tracking into two distinct levels: region-level tracking and block-level tracking. The region directory tracks sharing information at the region granularity, while the block directory tracks sharing information at the block granularity. This segmentation allows the system to reduce bandwidth demand by filtering requests at the region level before proceeding to block-level checks, while maintaining necessary storage overhead only where needed.
Solution Approach 2:
The patent introduces a new dimension of region-level tracking above the traditional block-level tracking. By adding this hierarchical dimension, the system can amortize storage costs to region granularity for regions with no sharers, reducing overall storage overhead while maintaining the ability to track individual block coherence when necessary.
2Quantity of substance
If coherence is tracked only at region level, then storage overhead is reduced, but bandwidth demand increases
Solution Approach 1:
The patent segments coherence tracking into two distinct levels: region-level tracking and block-level tracking. The region directory tracks sharing information at the region granularity, while the block directory tracks sharing information at the block granularity. This segmentation allows the system to reduce bandwidth demand by filtering requests at the region level before proceeding to block-level checks, while maintaining necessary storage overhead only where needed.
3Loss of energy
If dual-granularity tracking is implemented, then storage overhead and bandwidth demand are balanced, but device complexity increases
Solution Approach 1:
The patent segments the directory into two separate structures: a region directory for region-level tracking and a block directory for block-level tracking. This segmentation, while increasing structural complexity, is managed through clear separation of concerns where each directory handles specific granularity levels, making the system more manageable despite the added complexity.
Solution Approach 2:
The region directory acts as an intermediary between the block directory and the coherence request. By filtering and preprocessing requests at the region level, it reduces the load on the block directory and simplifies the overall coherence management, even though it adds an intermediate layer to the system.
Data Source
AI summary
A system and method of providing directory cache coherence are disclosed. The system and method may include tracking the coherence state of at least one cache block contained within a region using a global directory, providing at least one region level sharing information about the least one cache block in the global directory, and providing at least one block level sharing information about the at least one cache block in the global directory. The tracking of the provided at least one region level sharing information and the provided at least one block level sharing information may organize the coherence state of the at least one cache block and the region.


