Dynamic Coherency Models for Memory Objects at Runtime
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional cache coherency models in multicore systems require constant overhead due to static coherency settings, leading to inefficiencies and resource wastage, particularly in applications where coherency is only needed for specific durations.
Innovation Solution
Implementing dynamic coherency models using RISC-V architectures, allowing memory objects to be tagged as coherent or consistent based on application needs, thereby conserving resources by dynamically adjusting coherency protocols.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If static coherency settings are used in traditional cache coherency models, then data coherency is maintained across multicore systems, but constant overhead and resource wastage occur due to coherency being applied continuously even when not needed
Solution Approach 1:
The patent implements dynamic coherency models where coherency settings can be changed at runtime based on application needs. The caching agent receives coherency requests from compute elements and dynamically configures coherency protocols for specific memory ranges, allowing the system to transition from static to dynamic coherency management. This resolves the contradiction by making coherency application adaptive rather than continuous.
Solution Approach 2:
The system changes the coherency parameter state dynamically by allowing applications to request coherency for specific memory ranges and durations. The caching agent modifies coherency protocol parameters based on runtime conditions, enabling the system to adjust between coherent and non-coherent access modes as needed, thereby reducing overhead while maintaining data coherency when required.
2Reliability
If coherency protocols are applied continuously to ensure data consistency, then all compute elements see the most recent data values, but system efficiency decreases due to unnecessary coherency overhead for memory access operations
Solution Approach 1:
The patent applies coherency protocols locally to specific memory ranges rather than globally to all memory access operations. The caching agent configures coherency settings for particular memory regions based on application requirements, allowing efficient non-coherent access to memory regions where coherency is not needed while maintaining coherency for critical regions. This selective application resolves the contradiction between data consistency and system efficiency.
3Loss of energy
If dynamic coherency models are implemented allowing memory objects to be tagged as coherent or consistent, then resource wastage is reduced by adjusting coherency protocols dynamically, but device complexity increases due to additional coherency management mechanisms
Solution Approach 1:
The patent introduces a caching agent as an intermediary component that manages coherency requests between compute elements and memory. The caching agent receives coherency requests, configures coherency protocols for specific memory ranges, and monitors coherency state. This intermediary approach centralizes coherency management complexity in a dedicated component rather than distributing it across all system elements, making the dynamic coherency model more manageable while achieving resource efficiency.
Data Source
AI summary
Systems, apparatus, articles of manufacture, and methods are disclosed to facilitate use of dynamic coherency models for memory objects. An example apparatus includes interface circuitry; instructions; and at least one programmable circuit to be programmed by the instructions to: access a request identifying a memory range and a coherency model; and apply the coherency model to a memory address in the memory range based on the coherency model setting.


